张大晴 2011-08-03
搞了很久没弄好了,找到这篇神贴,终于解决了问题,亲身测试通过。
gmail 邮件中css无效style无效background image背景图片无效不显示的解决办法
几乎每个会员制网站都需要通过后台发送邮件来与会员进行沟通,如注册确认、营销推广。这些由站方发给会员的信件,往往纯文本格式已不能满足界面和交互的要 求,这时候我们就需要发送HTML页面。由于HTML邮件不是独立的HOST在本站的页面,是寄人篱下的。所以编写HTML邮件与编写HTML页面有很大 的不同。因为,各面向网民的主流邮箱都或多或少的会对它们接收到的HTML邮件在后台进行过滤。毫无疑问,JS代码是被严格过滤掉的,包括所有的事件监听 属性,如onclick、onmouseover,这是基于邮件安全性的考虑。不仅如此,CSS代码也会被部分过滤。本人要讲的就是如何编写不被各大主流 邮箱过滤的,能正常显示的HTML邮件。
gmail会自动过滤掉 head里的<style>设置的css,所以必须要把css写在html里面。
例如 <div style=”font-size:14px;”>
另外,gmail不支持在css里定义background里的image,包括background:url(”…”)和background-image:url(“..”)
解决办法是 在div的外面加上一层 <table>和<td>
并在<td>里加上background属性,例如
<table>
<tr>
<td background=”http://www.vivizu.com/test.jpg”>
<div>test</div>
</td>
</tr>
</table>