我目前正在建立一个新的HTML模板。
在其中一节中,我想显示一个不同的图像大小的MS-Outlook,因为它不会以与其他客户端相同的方式React。
原件:
<td align="left" class="column_one_half column_image" valign="top" width="100%">
<a href="#" target="_blank"><img alt="" class="mso-size" src="https://xxx" width="100%"></a>
</td>
我需要显示大小宽度="270"的图像;在Outlook中的height ="190"。我想在头部使用CSS声明。
我尝试了下面的方法,但是它不起作用。石蕊没有显示任何变化。我做错了什么?
谢谢你,
我是这么试的:
以下结构运行良好,Litmus显示预期结果:
<!--[if mso]>
<td align="left" class="column_one_half column_image" valign="top" width="100%">
<a href="#" target="_blank"><img alt="" src="xxx" width="270" height="190"></a>
</td>
<div style="display:none">
<![endif]-->
<td align="left" class="column_one_half column_image" valign="top" width="100%">
<a href="#" target="_blank"><img alt="" src="xxx" width="100%"></a>
</td>
<!--[if mso]>
<div>
<![endif]-->
但是,我不希望每个人都被强迫粘贴两次image-URL,我想使用头部的CSS来代替。
我尝试了下面的声明(粘贴在第一节下面:
<!--[if mso]>
<style>
img.mso-size {
width:270px!important;
height:190px!important;
}
</style>
<![endif]-->
1条答案
按热度按时间rta7y2nd1#
不幸的是,Windows上的Outlook使用Word作为呈现引擎。虽然它们确实支持CSS中的
width
和height
,但不支持<img>
元素。调整图像大小的唯一方法是使用HTMLwidth
属性或VML,如您所示。通常,我所做的是在Outlook的HTML属性中声明我想要的宽度。然后在同一图像的内联样式中,应用我想要的其他客户端的样式。基于您的示例,这可能会给予:
注意
width
属性中的百分比值在Windows上的 The Outlooks 中也有错误。(它们将基于物理文件大小,而不是像您通常期望的那样基于父元素的大小。)有关电子邮件客户端中CSS支持的更多细节,您可以参考Can I email。