2

长话短说,我正在制作 HTML 电子邮件(是的,我知道)。我已经让它在 GMail、Yahoo Mail、Thunderbird 和 Outlook 2003 中看起来很棒(尚未测试 07...)。唯一的问题是 Hotmail(Windows Live Mail)。它根本不支持背景图像这一事实并不困扰我的布局......这是因为布局,我需要将表格的宽度设置为设定值(550px)而不是百分比(80%),否则我的标题图像将只是漂浮在空间中并且看起来很难看。

所以我现在有两个选项,如我所见 - 制定一个特定于 Hotmail 的 css 规则以将宽度设置为静态值(我不知道这是否可能)或让我的邮件模板根据收件人是否属于“@hotmail.com”。我更喜欢前者而不是后者。

澄清:为简单起见,想象一个 550px 宽 x 150px 高的 div。它有一个带有repeat-x的背景图像。在那个 div 里面,我有一个 150px 高和 550px 宽的 img。如果外部 div 设置为视口的 80%,它应该向左扩展,从而暴露重复的背景。这是预期的。由于 Hotmail 不显示背景图像,因此它只是一个空白区域。

进一步澄清:去这里看看我的意思的一个例子。

4

3 回答 3

1

尝试将其放在每个图像标签中:

style="display: block"

你不能有不同的 CSS,因为它们都应该是内联的。您还应该使用表格(我知道,我知道)。如果您可以发布一些来源,我可以提供更多帮助。

于 2011-06-23T19:36:09.853 回答
0

最后,我不得不根据自定义规则列表(基于域的正则表达式替换)在发送之前修改我的电子邮件。

于 2011-06-27T18:46:40.027 回答
0

我知道这是个老问题,但它可能对仍在为 Web 和 Windows Outlook 以及 Windows 邮件苦苦挣扎的人们有用。

我找到了一种专门从 Windows Outlook 和邮件应用程序隐藏元素的方法:

<span style="mso-element:field-begin;"></span>
 Content to hide from Outlook 
<span style="mso-element:field-end;"></span>

参考这个伟大的博客

您也可以将所有 Outlook 应用程序(移动、Web、桌面)定位为:

<!--[if mso]> 
    <div> Your content that you want visible </div>            
<![endif]-->

您还可以使用其他条件反转它并针对特定版本,例如:

<!--[if !mso]> Everything not mso (outlook or windows mail) <![endif]-->
<!--[if gte mso 16]> All mso versions that are greater than 16 <![endif]-->

有关此链接的更多信息。

至于在桌面/Windows 版本的 Outlook(邮件应用程序和 Outlook ms)中显示背景图像,您可以使用 VML 以及更多相关信息,您可以在此处找到。

于 2021-06-10T08:12:38.070 回答