我的网络应用程序必须通过电子邮件提供数据库生成的内容。 HTML不需要包含javascript,但_does必须包含图像和CSS。
可以肯定的是,大多数用户都会在Outlook中查看此内容。对于发往电子邮件与IE的html,一般指南是否有所不同?
答案 0 :(得分:9)
Outlook对HTML邮件没有很好的声誉 - 例如,请参阅Microsoft to ignore web standards in Outlook 2010 - enough is enough。
但它并不是唯一有问题的电子邮件客户端,实际上:生成HTML电子邮件通常意味着做一些不同于网页的事情......
例如,您可以查看一下这篇文章:Ensuring your HTML Emails Look Great and Get Delivered。它提出的几点是:
嗯......与网页的内容完全相反,不是吗?
并提出一条建议:始终在尽可能多的客户端中测试您的电子邮件(基于桌面,如outlook,thunderbird,...和基于Web的,如yahoo,hotmail,gmail,...) 尽可能!
答案 1 :(得分:8)
绝对。在HTML电子邮件中使用CSS布局技术几乎是不可能的。所以...代码就像是1998年。
<html>
,<body>
或<head>
。有关Campaign Monitor's site的具体支持的详细信息。他们也有more practical guidelines。这是e-mail client usage的列表。
答案 2 :(得分:2)
在Outlook 2007中,它向后退了一大步:http://www.sitepoint.com/blogs/2007/01/10/microsoft-breaks-html-email-rendering-in-outlook/
现在使用Word,而不是使用IE作为渲染引擎。只支持最基本的HTML或者根本不支持。
答案 3 :(得分:0)
答案 4 :(得分:0)
通常,电子邮件用户代理往往因为有充分理由而非常偏离CSS和HTML的标准。某些电子邮件用户代理(如Thunderbird)声称在电子邮件中拥有完整的CSS支持,但据我所知,没有任何电子邮件用户代理完全支持HTML标准。
HTML专为网络设计,特别是HTTP传输。它包含标题定义,所有位于&lt; head&gt;&lt; / head&gt;下的位标签,旨在在HTTP传输下运行。 HTML是一种标记语言,它是结构化数据的文档。标记语言不是表示语言,但在电子邮件中使用HTML的唯一要点是用于表示。因此,HTML在电子邮件中不起作用,几乎无法访问。
在HTTP中,用户从服务器请求资源,服务器使用该资源进行响应。从服务器提供的文档的作者是能够在/向服务器上创建文档的人。 HTTP提供的资源只有一个作者。
在电子邮件中,许多不同的用户可以写入文档。文档不是源自服务器。由于文档不是源自服务器或已知的单用户标记语言和CSS体验包含和范围问题。这意味着电子邮件中的HTML和CSS与电子邮件线程的概念完全不兼容,因为CSS不会理解它应该被限制为单个通信实例。
由于这些不兼容性从未打算存在且无意纠正,因此Microsoft在电子邮件中支持尽可能少的HTML是完全正确的。没有标准解决这个问题,所以没有违规行为。违规行为是在电子邮件中使用HTML开始。
我的建议是等到采用邮件标记语言。如果我们都非常幸运,一个特定的用户代理商可能会在不久的将来宣布采用邮件标记语言。据我所知,邮件标记语言是目前唯一能够满足电子邮件线程要求的功能标记语言规范。