测试的邮箱主要是国外常用的gmail,yahoo,hotmail,还有QQ邮箱,gmail移动端。都是平时遇到的问题,不一定就对,有错误欢迎指正。这些都是当时最新版的邮箱进行测试的,具体时间看最近一次修改时间。
还有,邮件的本意本来就是简洁的表达消息,不建议做的太花哨复杂,容易进垃圾邮箱。最好的方式就是文字直接堆下来,清晰明了。
1.background-image 属性(一般用img标签直接堆积加载)
( gmail : 正常显示。 yahoo : 需要点击确认后和img一样显示。 hotmail : 不显示)
2.当margin-top 属性为负数(尽量不用)
( gmail : 不识别。 yahoo : 识别。 hotmail : 不识别。)
3.yahoo 会把height转化成min-height 用Max-height可以解决;(转化过程中会加上overflow-y:auto;可能样式会走样,在hieght后加一个overflow:hidden;覆盖可解决);
4.和普通网页不一样,光有href属性不行,必须非空才能点击;有的邮件会把空的a标签过滤掉。如果有在写在上面的样式,你自己看着办吧。
5.font-family 一般不用加引号“”,不然有些邮箱不识别;
6.某些情况下,邮件字体会被放大(比如说手机默认字体偏大):所以除了设计的时候别设计成固定高度中叠加多行字,还有就是别用line-height用padding或者margin写死就行。用的单位就用就用em,会比px好多了;
7.yahoo不识别rem但是识别em。
8.yahoo和hotmail不识别color:rgba( );(兼容写法rgba(0,0,0,.5)后再加个#000);
9.都不识别absolute,不会让你用这种破坏布局的属性的;
10.gmail移动端有时会出现正文被折叠的情况。(原因大概是内容内容过多,或者table用了多个tr,和上一封邮件内容一样被识别为引用所以被折叠。像多个标题一样的邮件合并成对话也会折叠内容不过这是正常的);
11.一些在浏览器的样式个别邮箱不会自动加上还是需要重写一遍(比如:p的margin属性;a的下划线...)
12.td的字体样式,很多邮箱会有这个样式:
body, td, input, textarea, select {
font-family: arial,sans-serif;
}
所以如果你对字体有要求记得覆盖
13.body不要写样式,有的邮件系统只会截取body里面的部分写在body的样式就不会生效了。
14.有的邮件系统是会读取body里的style标签的。但是还是不建议写现在大部分邮箱都不支持。
15.table标签不要写tbody,gmail网页版不识别,会把内容掏出来布局会被破坏。
16.line-height要断行的最好用br标签写死,用自动折行在不同环境下有可能不同