2

代码在 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>

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

4

5 回答 5

3

Outlook不支持最小宽度。

您有一个跨度和一个位于表格单元格中的表格。每个部分使用不同的单元格。像这样的东西是一个基本的例子:

<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>
于 2013-07-15T18:13:52.420 回答
1

您可以将“td”放在一列中(可能在“thead”行中,但任何“tr”都可以)并用尽可能多的 nbsp 填充它,以保持最小宽度。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>
于 2021-01-26T23:56:26.393 回答
0

对我有帮助的是设置内部和外部表的最小宽度(以及最大宽度,只是为了确定)。Diodeus 的“100% 在内表上”的建议对我来说根本不起作用。

于 2014-11-04T12:34:11.307 回答
0

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

<table width="100%" align="right">
于 2013-07-15T17:57:58.230 回答
0

如果您需要为 Outlook 的 HTML 电子邮件中的表格设置最小宽度,只需创建一个高度为 1 且宽度为所需最小宽度的 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]-->
于 2019-11-15T14:50:01.717 回答