HTML电子邮件是一个复杂的野兽。决定发送什么(作为发件人)和显示什么(作为收件人)是棘手的并且有潜在的危险。
在收件人方面,我们有 webmail ,我们有常规电子邮件客户端。出于我的目的,我认为“webmail”显示HTML电子邮件的任何内容都是HTML本身的一部分,而常规电子邮件客户端则是在不同的上下文中显示HTML电子邮件的任何内容(例如OS-和程序特定的GUI)。
网络邮件应该如何处理电子邮件中的HTML标题(<head>
,<title>
,<meta>
,...)?
在某个地方是否有规范,是作为实际标准还是事实上的标准?
我的询问动机是我们使用HTML Purifier来清理我们的HTML,如果其Core.CollectErrors功能报告发生变化,则会报告这些内容。这个'报道'既有必要......又令人沮丧。我们删除一些报告的错误对我们的目的来说是微不足道的,但HTML标题标志着一个巨大的障碍:
有人可能会在他们的电子邮件中使用<link>
,我们会将其删除。(HTML Purifier适用于HTML 片段,而非完整文档)
在HTML电子邮件中使用<link>
等内容的愿望肯定是seems to exist,并且有很多电子邮件客户端在HTML标头中发送<meta>
- 标签(例如展望),但是如何在野外处理事情?是否可以安全地将它们剥离出来(这对于我们的目的来说意味着“不会发生变化”)并且如果它 突破那么会对发送方造成谚语责备?这是合理吗?有人曾经以一种或另一种方式决定这一点吗?我的google-fu很弱。 :(
答案 0 :(得分:1)
我非常怀疑在任何地方都有一个规范,它规定了如何将HTML电子邮件嵌入到webmail客户端中。这主要是与现有网络邮件提供商实现平等的问题,这些提供商能够查看HTML电子邮件。我怀疑样式表是一个值得注意的例外,但我也怀疑大多数支持这种重型样式的HTML邮件程序在他们可以做什么和不能做什么方面受到相当大的限制,因为webmail可以处理它们。我建议做一些实验,并查阅像SquirrelMail这样的开源Webmail系统的源代码。
如果您担心信息丢失,许多客户允许您做的一件事就是下载原始HTML,以便离线查看。当然,它往往是非常残暴的,所以我不知道为什么有人会这样做。
答案 1 :(得分:1)
答案 2 :(得分:0)
我对HTML电子邮件的处理方法是编写我们在1990年代所做的那种基本HTML - 表格布局,最小内联CSS(仅适用于颜色),这就是它。我不知道现代客户如何处理CSS定位,但人们仍在使用Outlook 2003,我认为它基于运行IE6的仇恨渲染引擎 - 所以最好的共同点就是付出代价。
我从来没有见过任何看起来像它的标准,我看到一些电子邮件客户端(GMail)剥离了各种东西 - 包括CSS,而其他人只是忽略了某些东西(Outlook和背景图片)。 / p>
理性地说,我无法想象电子邮件中的任何元信息会用到什么 - 它足以让人们阅读你的邮件,我怀疑更少会查看来源!我总是包含一个标题标签,以防任何人想把它作为一个主题使用 - 但即便是在黑暗中刺伤。
每当我看到邮件服务器方面的请求时 - 不可否认,但我从未注意到任何内容都被缓存了。您打开邮件,再次发出请求。我确信自上次检查以来事情已经发生了变化,但我个人认为 - 我仍然倾向于保持HTML电子邮件尽可能简单并且尽可能地剥离。