Outlook 2016:HTML 签名中的简单 table 宽度未被接受

Outlook 2016: Simple table width in HTML signature not being honored

我在这里感到困惑,我承认这可能是由于我缺乏编写 HTML 签名的经验,但很明显标准 html 编码在制作 html 签名...

我正在使用 Outlook 2016(又名 Office 365) 版本 1808(内部版本 10730.20102)

像这样的简单 html table 代码会产生奇怪的结果:

<table width="800" height="115">
<tbody>
    <tr>
        <td bgcolor="#000000" valign="top">
            This is some text
        </td>
    </tr>
</tbody></table>

table 的宽度远远大于指定的 800 像素:

任何人都可以帮助我理解为什么会发生这种情况,以及我是否可以做些什么来使其正确呈现?

您创建了一个 table 800 CSS 像素宽,但 CSS 像素不是设备像素。 CSS 像素应该是 1/96 英寸(technically,0.0213 弧度),用户代理 (Outlook) 可以根据需要自由使用任意数量的设备像素。

在这种情况下,Outlook 似乎是从您的显示设置中的 150% 比例因子中获取线索的。 Windows 告诉 Outlook 你有一个 144dpi 的显示,而 Outlook 呈现 1200 像素宽 table。 (未指定 table 的高度,因为 height 不是 <table> 的可识别属性。)