在桌面和移动端渲染电子邮件大约有上百万种不同的组合方式。
尤其是鼎鼎大名的 OutLook,从 OutLook2007 开始便使用 Word HTML 引擎进行渲染,为了它的安全性从而使得整个邮件倒退回了 2000 年前,为了邮件的兼容性你不得不使用很多废弃的标签、属性,并且这一状况将会维持无数个
年头,因为虽然万事终有尽头,但 OutLook 始终存在。
因为微软一向地特立独行,使得 OutLook 成为了最难啃的骨头。因为 OutLook 支持的标签和属性少得可怜,所以只要兼容了 OutLook,其他邮箱客户端基本都不会有什么问题。
使用tableb布局
这几乎是 HTML 邮件与普通 HTML 页面最大的区别,因为各个邮箱对 div + css 这一套布局的解析问题很大(如 float / position 等 CSS 都会被过滤,甚至 margin: 0 auto都不起作用),基本各大邮箱都会解析混乱,所以老式的 table 布局是上乘之选。这就意味着 HTML 邮件中几乎只有这几个元素——table / tr / td / span / img / a,尽量避免使用 div / p 或是其他标签。
而且并不是所有邮箱都支持 colspan / rowspan 属性,所以所有布局都需要使用 table 嵌套解决。
1.Doctype
目前,兼容性最好的Doctype是XHTML 1.0 Strict,事实上Gmail和Hotmail会删掉你的Doctype,换上这个Doctype。
使用这个Doctype,也就意味着,不能使用HTML5的语法。
2.布局
网页的布局(layout)必须使用表格(table)。首先,放置一个最外层的大表格,用来设置背景。
基本html
3.图片
图片是唯一可以引用的外部资源。其他的外部资源,比如样式表文件、字体文件、视频文件等,一概不能引用。
有些客户端会给图片链接加上边框,要去除边框。
需要注意的是,不少客户端默认不显示图片(比如Gmail),所以要确保即使没有图片,主要内容也能被阅读。
4.行内样式
所有的CSS规则,最好都采用行内样式。因为放置在网页头部的样式,很可能会被客户端删除。客户端对CSS规则的支持情况,请看这里。
另外,不要采用CSS的简写形式,有些客户端不支持。比如,不要写成下面这样:
如果想表达
要写成下面这样:
相关文章
HTML 邮件兼容问题与解决方案
test10 邮件为 Win10自带邮件应用,通过Outlook邮箱发送的邮件。可以看到发件人为三个问号。出现这样的问题在网页端使用Outlook无此问题,那么问题应该出在Win10上的邮件应用上。下面winwin7给大家分享介绍下win10自带邮件应用发件人显示问号的解决方法!win10自带邮件应用发件人显示问号的修复方法:尝试将系统下自带的邮件应用进行重置然后查看效果:
打开设置——应用——应用和功能——邮件和日历——高级选项——重置。在邮件开发邮件发送的时候,可能会嵌套html标签,在主流的浏览器好foxmail显示是正确的,但是在outlook工具上显示不正常,刚开始的时候很好奇,为什么不对呢,经过测试 我们写的邮件的html是html5,outlook的兼容html2,意思不需要写那么骚气的html标签。先确认邮箱的配置方式是否正确,有没有做过修改,查看服务器设置是否有做过修改。
2.打开Outlook,到文件-选项-高级-加载项(COM加载项),将加载项前面的勾选去掉。
3.当前使用的哪个运营商的网络呢,更换其他运营商的网络查看,有线或者无线网络都可以尝试一下。
4.是否是在工作域里面或者有VPN网络代理服务,会有影响。我们了解到您的企业邮箱在Outlook 中接收邮件出现乱码问题。
请问您的邮箱类型是什么环境的呢?(POP、IMAP、Exchange),您提供的图片我们无法看到,如果可以还请您重新上传图片了。
该问题有可能是发件人使用的语言或邮件编码与您使用的环境不一致导致的。
建议您尝试以下步骤确认情况如何?
一、更改系统区域设置:
1.Windows键+X键
2.选择控制面板
3.右上角查看方式小图标
4.找到语言设置选项
5.选择左下角的位置
6.选择管理
7.非Unicode的程序语言设置为 中文(简体,中国),确定。打开Outlook,然后双击打开附件显示乱码的邮件;
2. 单击“操作” -- “其他动作” -- “编码”,设置为UTF-8,然后再次打开 该邮件确认情况,如果问题依旧,再次尝试其他编码。Outlook发送的邮件,经过mac iphone ipad 接收后回复此邮件;当outlook再次接受到回复邮件时,在电脑终端上显示乱码。
原理:
mac发送邮件是以unicode编码的纯文本方式发送邮件;
Outlook默认发送邮件是以GB2312编码的html方式
接收邮件解决办法:
a)打开收到的邮件:
outlook2003 点击“视图”,更改“编码”为Unicode(utf-8);
outlook2007点击“其他动作”,更改“编码”为Unicode(utf-8)。
b)目前foxmail可以正常收发mac回复的邮件。
发送邮件解决办法:
Outlook发送邮件时选择纯文本方式,进行发送。
A) 新建邮件或者回复邮件时,选择纯文本,进行发送或回复,如图一。
mac与outlook间邮件回复乱码问题的解决办法
B) 在弹出对话框(如图二)中,请点击“继续”;会提示你“不支持此文档中的某些功能”,这是由于默认的格式是html,图片和字体格式在纯文本中不受支持。