エンドユーザーの入力を受け取り、それをHTMLメールに挿入しています。ただし、エンドユーザーが長いURLまたは非常に長い単語を入力すると、指定された幅を超えて列またはdivが拡張され、Outlook2010のHTMLレイアウトが壊れます。
Chrome、Firefox、IE7 +、およびSafariでは、style = "table-layout:fixed"を使用して、テーブルの列を特定の幅に強制できます。ただし、Outlook 2010はこれを無視し、長い単語はテーブルの幅を固定幅を超えて押し出します。
Divを使用すると、Chrome、Firefox、IE7 +、Safariで、style = "word-wrap:break-word; overlay:hidden; width:100px"を使用してdivの幅を修正できます。ただし、Outlook 2010では、divが固定幅を超えて押し出されます。
どうすればoutlook2010を取得して長い単語をラップし、固定幅を尊重することができますか?
これが私のサンプルHTMLです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<table width="400" style="table-layout: fixed" border="1">
<tr>
<td width="100">
yo
</td>
<td width="300">
Don't move me
</td>
</tr>
</table>
<table width="400" style="table-layout: fixed" border="1">
<tr>
<td width="100" style="word-wrap: break-word; overflow: hidden; width: 100px" border="1">
yoooooooooooooooooooooooooooooooooooooooooooooooooooooo
</td>
<td width="300">
Ya moved me
</td>
</tr>
</table>
<table width="400" border="1">
<tr>
<td width="100">
<div style="word-wrap: break-word; overflow: hidden; width: 100px" border="1">
yoooooooooooooooooooooooooooooooooooooooooooooooooooooo
</div>
</td>
<td width="300">
Ya moved me
</td>
</tr>
</table>
</body>
</html>