在Outlook中显示时,是否可以设置图像的背景颜色(HTML电子邮件)?

时间:2016-06-22 06:02:23

标签: html css email outlook html-email

我有一项服务,通过电子邮件向客户发送有关某些事件的更新信息。该服务构建电子邮件并在发生这些事件后将其发送给客户端。 这些模板在Thunderbird,Gmail和其他电子邮件客户端上呈现出色;但是他们不会对前景有所了解。这是有关标记的一部分:

public static final String ROW = "<tr>"
            + "<td align=\"center\" width=\"30%\">"
            + "<img bgcolor=WARNING_COLOR style=\"background-color:WARNING_COLOR; border-radius: 20em;\" alt=\"Warning_Icon\" src=\"WARNING_ICON\" height=\"40\"  width=\"40\"></td>"
            + "<td rowspan=\"2\" >TYPE</td>"
            + "<td rowspan=\"2\" width=\"30%\">ERROR_MESSAGE</td>"
            + "<td rowspan=\"2\">NAME</td>"
            + "<td rowspan=\"2\">DESCRIPTION</td>"
            + "</tr><tr><td align=\"center\" width=\"30%\">ID</td><tr/>";

在发送内容之前替换所有大写字母。问题出现在bgcolorbackground-color元素上。我将它们设置为橙色或红色。在Outlook中,颜色不起作用,图像有效,但在白色背景上它们是白色的。我尝试使用名称(orangered)和六位十六进制代码(#FFA500#FF0000)进行设置但没有成功。 我尝试过包含/排除bgcolor,但它不起作用。

是否可以在Outlook中使用它? 在这一点上,我很想渲染多个png文件,每个文件对应一个状态和类型,并完成它。

1 个答案:

答案 0 :(得分:2)

唯一的方法是使用透明背景PNG或GIF图像并在TD上设置背景颜色(最好使用'bgcolor'HTML属性,因为并非所有人都识别CSS)。

基本上会变成:

public static final String ROW = "<tr>"
            + "<td bgcolor=WARNING_COLOR align=\"center\" width=\"30%\" style=\"background-color:WARNING_COLOR; border-radius: 20em;\">"
            + "<img alt=\"Warning_Icon\" src=\"WARNING_ICON\" height=\"40\"  width=\"40\"></td>"
            + "<td rowspan=\"2\" >TYPE</td>"
            + "<td rowspan=\"2\" width=\"30%\">ERROR_MESSAGE</td>"
            + "<td rowspan=\"2\">NAME</td>"
            + "<td rowspan=\"2\">DESCRIPTION</td>"
            + "</tr><tr><td align=\"center\" width=\"30%\">ID</td><tr/>";