您可以为电子邮件中的丰富HTML格式提供哪些指导,同时在许多客户端和基于Web的电子邮件界面中保持良好的视觉稳定性?
关于Stack Overflow问题的一个不相关的答案建议:
http://www.campaignmonitor.com/blog/archives/2008/05/2008_email_design_guidelines.html
其中包含以下准则:
<body>
而不是<head>
中
一些电子邮件客户端会将CSS从头部剥离,但如果样式块(无效地)在正文中,则保留它。 <head>
还是<body>
,还是荣誉使用style=""
属性分配的内联样式我也有一些“未经证实”的事实,我不记得我在哪里阅读它们。
我想从战壕中获得更多指导方针和经验,充实这份清单。
您能提供进一步的建议吗?
更新:我特别要求HTML中的设计部分指南及其一致性。关于avoiding spam filters和common courtesy的一般准则的问题已经在SO上。
答案 0 :(得分:59)
如果从“现代HTML和CSS”的角度来看,实际上真的很难做出体面的HTML电子邮件。
为了获得最佳效果,请想象它是1999年。
style
属性的内联样式。float
<a href="http://domain.tld">www.someotherdomain.tld</a>
错误)更新以回答更多问题:
不要在表格中使用两个以上的嵌套级别
我认为这是一个与Lotus Notes相关的旧指南。嵌套表应该没问题,但实际上,如果你的布局足够复杂,需要它们,你可能会遇到麻烦。保持布局简单。
小心在单元格/表格中嵌套背景图像
这可能与上述有关,同样适用,如果你变得那么复杂,那么 会有问题。最新版本的Outlook根本不支持背景图像,因此建议您完全忘记它们。
答案 1 :(得分:13)
始终使用multipart mime并提供纯文本替代。
答案 2 :(得分:9)
Campaign Monitor背后的人们还启动了一个Email Standards Project网站,其中包含大量有用信息。
答案 3 :(得分:3)
看看这个样板文件,它就像html5boilerplate,但对于电子邮件: http://htmlemailboilerplate.com/
答案 4 :(得分:2)
我认为这比您提出的问题要低,但如果您确实希望尽可能多的客户端正确查看html电子邮件,请确保它使用的是有效的MIME。特别是,要将电子邮件视为有效的MIME,标题必须(在RFC的意义上)包含这两个标题:
MIME-Version:
Content-Type:
非常严格的客户端会将您的HTML显示为原始文本,如果缺少其中一个或另一个。你应该感到惊讶的是,许多应该知道更好的大型在线供应商搞砸了这一点(特别是,我收到的HTML电子邮件缺少MIME版本:过去亚马逊和ACM的标题)
答案 5 :(得分:1)
答案 6 :(得分:1)
三个建议:测试,测试,测试。
查看LitmusApp.com的电子邮件测试服务。您向他们发送消息并将其呈现在一堆客户端中,并向您显示结果的屏幕截图。它并不完美,但它非常好。
(在8.0之前的Lotus Notes真的,顺便说一下,HTML邮件真的很臭)
此外,除了内联CSS样式之外,我建议尽可能切换到标签。
答案 7 :(得分:1)
嵌入您的图片,不要链接到它们。
这很糟糕:
<img src="http://myserver.com/myImage.jpg" alt="Lolkat"/>
这很好:
<img src=cid:myImage/>
是的,看起来很奇怪,但请查看guide regarding embedding images in emails。
答案 8 :(得分:0)
如果您要包含样式块,请不要使用“.classname”或“。”开始任何新行。任何东西。在此期间之前放一个支具或东西。如果您不这样做,某些Web邮件系统将无法正确显示您的样式表。
许多人错误地认为他们不能在电子邮件中使用CSS阻止因为这种行为...... IIRC“。”是SMTP的正文分隔符。系统将倾向于在其邮件存储中转义,以防止将一条消息的内容误识别为新消息。处理此方法往往会破坏任何样式,从具有句点的新行开始。