在创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。

更新:在你告诉他们遵循标准的时候,生气的人得到了几次反对票后,我会暴露出为什么遵循标准在这里有好处的一些原因:

  1. 愿意将您的邮件作为整页显示的networking邮件可以保留您的格式。
  2. 一个networking邮件将简单地剥夺标签和它不想要的属性。 但是你永远不知道哪一个。
  3. 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:

活动监视器的采取

电子邮件在酸的采取