在创buildHTML电子邮件时,我们应该使用html,head,body标签吗?
在我的电子邮件视图中,我通常只是做一些像…
<dl> <dt>Name</dt> <dd>Value</dd> </dl>
我应该这样做吗?
<html> <head></head> <body> <dl> <dt>Name</dt> <dd>Value</dd> </dl> </body> </html>
换句话说,就像我正在标注一个独立的文档?
我想我可以放心地假设任何基于Web的电子邮件客户端将它删除?
什么是正确的方式?
不pipe你是否包含html / head / body标签都是完全不相关的 – 它们总是可选的,不会以任何方式影响文档的呈现。
最重要的是怪癖模式是否打开。 不幸的是,你不能在一个networking邮件设置中控制它。 表格和内联样式是你的朋友。 最好的办法是尽可能多地testingnetworking邮件和桌面客户端。
正确的方法是遵循HTML 标准 。 你可以在这里validation你的HTML页面。
你的邮件客户端应该遵循它,应该扔掉什么不支持或什么是不安全的像JavaScript。
更新:在你告诉他们遵循标准的时候,生气的人得到了几次反对票后,我会暴露出为什么遵循标准在这里有好处的一些原因:
- 愿意将您的邮件作为整页显示的networking邮件可以保留您的格式。
- 一个networking邮件将简单地剥夺标签和它不想要的属性。 但是你永远不知道哪一个。
- find符合格式标准的(服务器端)组件更容易,因此错误更less。 不遵循标准的parsing器可能会中断,使您的电子邮件不能显示。
完全取决于收到它的电子邮件客户端。 根据我的经验,大多数将解释HTML的电子邮件客户端并不关心您是否拥有完整的body / head / html标签等。实际上,您甚至不需要大多数浏览器的标签。 你需要让头标签包含样式/标题等,否则它们本身并不是真的必要的。 我从来没有见过他们是必要的。
我不认为有一个正确的方法,但试图使电子邮件阅读器的电子邮件阅读器可见。
我通常会在Thunderbird中查看电子邮件,因为Outlook会原谅更多。
在雷鸟这是一个电子邮件的HTML代码(我有一个扩展名,显示HTML)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> </head> <body bgcolor="#ffffff" text="#000000"> This is the body text<br> <div class="moz-signature"><i><br> <br> Regards<br> Alex<br> </i></div> </body> </html>
顺便说一句,我使用纯文本电子邮件的所有我的网页forms,我可以。 我使用html +纯文本电子邮件的黑莓电子邮件有很多问题。
有一件事我知道是正确的:使用HTML打开和closures标签将有助于一般性的垃圾邮件评分,因为许多这样的基于设备的filter和软件防火墙将添加一点左右,使用HTML但不使用HTML的电子邮件打开和closures标签。
这个post上的很多post都比较老,所以他们不再准确。
如果你打算做任何事情,HTML电子邮件应该包括一个doctype,html和body声明。
关于这个问题有很多的指导,可以帮助你学习如何正确编写HTML电子邮件,但其中大多数忽略了文档types的具体情况,这是我偶然发现你的问题。
我build议你阅读以下2个来自知名团队熟悉各种问题的post:
活动监视器的采取
电子邮件在酸的采取