Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么所有CSS规则都不能在HTML电子邮件中工作?_Css_Standards_Html Email - Fatal编程技术网

为什么所有CSS规则都不能在HTML电子邮件中工作?

为什么所有CSS规则都不能在HTML电子邮件中工作?,css,standards,html-email,Css,Standards,Html Email,为什么HTML电子邮件不能支持普通定位和HTML标记 像float和background image这样的简单css规则不起作用有什么具体原因吗?我无法想象这些会带来任何我们在普通电子邮件中没有的安全问题 我希望任何答案都基于可靠的来源/参考,并在电子邮件客户端中解释这种行为的基本原理 当涉及HTML和CSS时,为什么HTML电子邮件不遵循正常的web标准 HTML电子邮件的一些一般信息: 下面是一篇很好的文章,提供了有关HTML电子邮件的提示: 我自己对CSS问题的解释如下: HTML是一种标

为什么HTML电子邮件不能支持普通定位和HTML标记

像float和background image这样的简单css规则不起作用有什么具体原因吗?我无法想象这些会带来任何我们在普通电子邮件中没有的安全问题

我希望任何答案都基于可靠的来源/参考,并在电子邮件客户端中解释这种行为的基本原理


当涉及HTML和CSS时,为什么HTML电子邮件不遵循正常的web标准

HTML电子邮件的一些一般信息:

下面是一篇很好的文章,提供了有关HTML电子邮件的提示:

我自己对CSS问题的解释如下:

HTML是一种标记语言,这意味着电子邮件程序需要一个HTML解析器来读取它

另外,正如您所知,并非所有浏览器都使用相同的渲染引擎或渲染规则。与浏览器一样,所有HTML解析器都是一样的:每个解析器都会略有不同

所以float不起作用的原因很简单,因为电子邮件客户端使用的已实现的HTML解析器在解释基于float的布局时并不“好”

一:

因为像Gmail和Outlook 2007这样的客户对 浮动、边距和填充,您需要使用表作为框架 你的电子邮件

因此,建议不要使用浮动,但这并不意味着它们肯定不起作用。这取决于电子邮件客户端以及它对CSS的支持程度

我强烈建议您查看此列表,其中显示了CSS对主要电子邮件客户端的支持:

您可以在此处下载完整的指南:

总结如下:

就像网站一样,不同的电子邮件客户端有不同的CSS解释和规则。一些电子邮件客户端甚至忽略了特定的CSS规则。最好的解决方案是出于安全考虑,只使用所有或大多数电子邮件客户端支持的CSS


有关HTML电子邮件的一些一般信息:

下面是一篇很好的文章,提供了有关HTML电子邮件的提示:

我自己对CSS问题的解释如下:

HTML是一种标记语言,这意味着电子邮件程序需要一个HTML解析器来读取它

另外,正如您所知,并非所有浏览器都使用相同的渲染引擎或渲染规则。与浏览器一样,所有HTML解析器都是一样的:每个解析器都会略有不同

所以float不起作用的原因很简单,因为电子邮件客户端使用的已实现的HTML解析器在解释基于float的布局时并不“好”

一:

因为像Gmail和Outlook 2007这样的客户对 浮动、边距和填充,您需要使用表作为框架 你的电子邮件

因此,建议不要使用浮动,但这并不意味着它们肯定不起作用。这取决于电子邮件客户端以及它对CSS的支持程度

我强烈建议您查看此列表,其中显示了CSS对主要电子邮件客户端的支持:

您可以在此处下载完整的指南:

总结如下:

就像网站一样,不同的电子邮件客户端有不同的CSS解释和规则。一些电子邮件客户端甚至忽略了特定的CSS规则。最好的解决方案是出于安全考虑,只使用所有或大多数电子邮件客户端支持的CSS


你在征求意见,因为我怀疑写邮件的人会在这里回复客户;这样的问题不属于堆栈溢出问题。@AndrewMorton:我怀疑他是在征求意见。相反,他似乎希望得到一个解释,为什么普通的CSS规则在电子邮件客户端中并不总是有效,以便他将来能够更好地向他的客户端解释。现在的问题不再主要是基于意见的Outlook'07,'10&'13使用MS Word渲染引擎,而以前的版本使用所谓的Trident。这就是他们支持有限的原因。同时,web客户端不允许任何可能干扰其页面的内容。想象位置:固定;比如Gmail。其他客户端(如Mac和Thunderbird)使用Webkit/Gecko进行渲染,并且具有出色的支持,它只是针对阻止电子邮件的薄弱环节进行设计。有关桌面客户端的更多信息,请参阅。请参阅webmail。您正在征求意见,因为我怀疑撰写邮件客户的人是否会在这里回复;这样的问题不属于堆栈溢出问题。@AndrewMorton:我怀疑他是在征求意见。相反,他似乎希望得到一个解释,为什么普通的CSS规则在电子邮件客户端中并不总是有效,以便他将来能够更好地向他的客户端解释。现在的问题不再主要是基于意见的Outlook'07,'10&'13使用MS Word渲染引擎,而以前的版本使用所谓的Trident。这就是他们支持有限的原因。同时,web客户端不允许任何可能干扰其页面的内容。想象位置:固定;比如Gmail。其他客户如Mac和Thunderbird
使用Webkit/Gecko进行渲染,并提供出色的支持,它只是针对阻止电子邮件的薄弱环节进行设计。有关桌面客户端的更多信息,请参阅。请参阅webmail。顶部的链接是2006年的,我认为2014年的大部分要点都不重要。@John:无论如何,底部的链接还是最近的,这是我的主要观点。没错。我刚刚发现链接的内容误导了今天对html电子邮件的普遍看法。我觉得有必要对那些偶然发现这条线索的人提出警告。@John:同意。我替换了两个新的链接,更好地解释了这一点。下面是更多的。顶部的链接是2006年的,我认为2014年的大部分要点都不太重要。@John:不管怎样,底部的链接仍然是最新的,这是我的主要观点。没错。我刚刚发现链接的内容误导了今天对html电子邮件的普遍看法。我觉得有必要对那些偶然发现这条线索的人提出警告。@John:同意。我替换了两个新的链接,这两个链接可以更好地解释这个问题。