最小宽度嵌套表HTML电子邮件

时间:2013-07-15 17:51:16

标签: html email outlook

代码在gmail和苹果邮件客户端中工作正常,但前景让我发疯。

<table cellpadding="0" width="600" align="center" valign="top" style="padding-bottom:10"            style="min-width:600px;">
<tr>
<td>    
<span style="font-family:Tahoma; background-color:#81DAF5; font-size:35px;"><i>Text</i>      </span>
</td>
<td>
<table align="right">
<tr>
<td align="right">
<span style="background-color:#ffffff; font-size:14px; font-family:Verdana, Geneva,   Arial, Helvetica, sans-serif"><i>Text</i></span>
</td>
</tr>
<tr>
<td align="right">
<span style="background-color:#ffffff; font-size:14px; font-family:Verdana, Geneva, Arial, Helvetica, sans-serif"><i>Text</i></span>
</td>
</tr>
</table>
</td>
</tr>
</table>

我希望整个表的最小宽度为600px,但在outlook中,当缩小窗口大小时,文本开始换行。

5 个答案:

答案 0 :(得分:2)

Outlook的最小宽度isn't supported

您有一个跨度和一个表位于表格单元格内。每个部件使用不同的单元格。这样的事情就是一个基本的例子:

<table width="100%" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td align="center">
      <!-- Center Panel -->
      <table width="600" border="0" cellpadding="0" cellspacing="0">
        <tr>
          <td width="400">
            <span style="font-family:Tahoma; background-color:#81DAF5; font-size:35px;">
              <i>Text</i>
            </span>
          </td>
          <td width="200" style="font-size:14px; font-family:Verdana, Geneva, Arial, Helvetica, sans-serif">
            <!-- Nested to stack two rows, could also use br's or rowspans if preferred -->
            <table width="100%" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td align="right">
                  <i>Text</i>
                </td>
              </tr>
              <tr>
                <td align="right">
                  <i>Text</i>
                </td>
              </tr>
            </table>
          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>

答案 1 :(得分:1)

您可以将一个“td”放在一列中(可能在“thead”行中,但任何“tr”都可以)并用尽可能多的 nbsp 填充它以保持最小宽度。 A nbsp 是一个不可破坏的空间,这意味着(在大多数情况下)不会折叠或允许换行。等宽字体最适合这种情况。

<table>
    <thead>
        <td style="font-family: Consolas, monaco, monospace;">&nbsp;&nbsp;&nbsp;MinimumWidthHolder&nbsp;&nbsp;&nbsp;</td>
    </thead>
    <tbody>
        <tr>
            <td>your text</td>
        </tr>
    </tbody>
</table>

答案 2 :(得分:0)

将内部表格的宽度设置为100%。

<table width="100%" align="right">

答案 3 :(得分:0)

对我来说有用的是设置内部和外部表的最小宽度(以及最大宽度,只是为了确定)。 Diodeus&#39;建议&#34; 100%在内表&#34;根本不适合我。

答案 4 :(得分:0)

如果您需要为Outlook的HTML电子邮件中的表格设置最小宽度,只需将高度和宽度设为您想要的最小宽度的tr和td即可。

<!-- Outlook min-width hack -->
    <!--[if (mso)|(IE)]>
    <tr>
        <td bgcolor="#FFFFFF" style="background-color: #FFFFF; padding: 0; margin:0;">
            <table cellspacing="0" cellpadding="0" width="360" height="1" style="margin:0; padding: 0;">
                <tr style="margin:0; padding: 0;"><td height="1" width="360"></td></tr>
            </table>
        </td>
    </tr>
    <![endif]-->