124

在我的电子邮件视图中,我通常只是做类似...

<dl>
   <dt>Name</dt>
   <dd>Value</dd>
</dl>

我应该这样做吗?

<html>
  <head></head>
  <body>
    <dl>
       <dt>Name</dt>
       <dd>Value</dd>
    </dl>
  </body>
</html>

换句话说,就像我在标记一个独立的文档一样?

我想我可以放心地假设任何基于 Web 的电子邮件客户端都会将其删除?

什么是正确的方法?

4

6 回答 6

52

The right way is to follow the HTML standard. You can validate your HTML page here.

Your mail client should follow it and should throw away what's not supported or what's insecure, like JavaScript.

I'll expose some reasons why following standards could be beneficial here:

  1. a webmail willing to show your mail as a full page, could keep your format.
  2. a webmail will simply strip the tags and attributes it doesn't want. But you can never know which ones.
  3. It's easier to find (server side) components that follow format standards, and thus are less error prone. Parsers not following standards could possibly break, making your email not getting shown.
于 2010-10-11T05:14:19.200 回答
33

是否包含 html/head/body 标签完全无关紧要——它们始终是可选的,不会以任何方式影响文档的呈现。

最重要的是怪癖模式是否开启。不幸的是,您无法在网络邮件设置中控制它。表格和内联样式是您的朋友。最好的办法是在尽可能多的网络邮件和桌面客户端中进行测试。

于 2010-10-11T02:46:13.737 回答
18

该线程上的许多帖子都相当陈旧,因此它们不再准确。

如今,如果您打算做任何花哨的事情,HTML 电子邮件应该包含 doctype、html 和正文声明。

关于这个主题有很多指南可以帮助您学习如何正确编码 HTML 电子邮件,但其中大多数都忽略了文档类型的细节,这就是我偶然发现您的问题的方式。

我建议您阅读以下 2 篇来自熟悉各种问题的知名团队的帖子:

竞选监督员的看法

关于酸的电子邮件

于 2016-05-17T22:34:38.117 回答
11

完全取决于接收它的电子邮件客户端。根据我的经验,大多数会解释 HTML 的电子邮件客户端并不关心您是否有完整的 body/head/html 标签等。事实上,对于大多数浏览器来说,您甚至不需要这些标签。您需要在头部标签中包含样式/标题等。否则它们本身并不是真正必要的。我从未见过它们是必要的。

于 2010-10-11T02:37:38.453 回答
10

我知道有一件事情是正确的:使用 HTML 开始和结束标签将有助于一般垃圾邮件评分,因为许多此类基于设备的过滤器和软件防火墙会在使用 html 但不使用的电子邮件中添加一个点左右开始和结束标签。

于 2013-06-06T03:48:54.583 回答
4

我认为没有正确的方法,但要尝试使电子邮件在尽可能多的电子邮件阅读器中可见。

我通常会在 Thunderbird 中查看电子邮件,因为 Outlook 会原谅更多。

在 Thunderbird 中,这是电子邮件的 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>

顺便说一句,我每次可以使用纯文本电子邮件作为我所有的网络表单。我在使用 html+纯文本电子邮件的黑莓电子邮件方面遇到了很多问题。

于 2010-10-11T02:42:37.020 回答