我有一项服务,通过电子邮件向客户发送有关某些事件的更新信息。该服务构建电子邮件并在发生这些事件后将其发送给客户端。 这些模板在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/>";
在发送内容之前替换所有大写字母。问题出现在bgcolor
和background-color
元素上。我将它们设置为橙色或红色。在Outlook中,颜色不起作用,图像有效,但在白色背景上它们是白色的。我尝试使用名称(orange
和red
)和六位十六进制代码(#FFA500
和#FF0000
)进行设置但没有成功。
我尝试过包含/排除bgcolor
,但它不起作用。
是否可以在Outlook中使用它?
在这一点上,我很想渲染多个png
文件,每个文件对应一个状态和类型,并完成它。
答案 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/>";