html文档中的字符集声明必须在多少字节内



当我在w3.org上读到:时,我以为我已经找到了问题的答案

包含字符编码声明的元素必须在文档的前512个字节内完全序列化。

然后通过html5boilerplate文档链接到whatwg.org[http://cl.ly/K7Vt]读到这篇文章,我不确定哪个是正确的:

包含字符编码声明的元素必须在文档的前1024个字节内完全序列化。

哪个是正确的?

引用的第一个文档是非规范W3C文档,旨在以可理解的方式将HTML5描述为标记语言。第二个是WHATWG文件,它声称是一个"生活标准"(一种矛盾修辞法),但主要符合W3C HTML5文件,这是一个工作草案,这意味着它远不是官方的(甚至不一定得到所有工作组成员的认可),而是旨在创建一个"标准"(W3C建议)。在这种情况下,后者的说法与WHATWG文件相同。

在我看来,在W3C草案中,这个数字在2011年4月5日的草案中从512提高到了1024。据推测,这份非规范性文件在这方面还没有更新。

因此,没有标准,即使是松散的W3C意义上的标准,也没有明确的正确性标准。但显然1024应该是下限。应将其理解为对作者的建议;浏览器实际上可能会采用更为自由的策略。

实际上,指定编码的meta标签应该出现在head部分的任何其他元素之前。即使在<html><head>标记中使用详细标记,也远远达不到512个字符的限制。如果您在HTML文档的开头有大量的注释,只需删除它们;有更好的地方存放文档。

最新更新