<!DOCTYPE html>
是而不是“文件类型声明”。
“文档类型声明”是一种SGML概念,用于表示后续标记的标记语法和词汇。 <!DOCTYPE html>
不符合要求。这不同于<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
,它是符合SGML的文档类型声明。
<!DOCTYPE html>
确实不是表示HTML5文档。
尽管文本/ html序列化中符合HTML5的文档在开始时需要有<!DOCTYPE html>
,但并不表示反之亦然。即一个文档在开始时可以有<!DOCTYPE html>
,而不是HTML5文档。例如,所有将来的HTML版本都会在开始时使用相同的字符序列。因此,它可能表示HTML5文档或HTML6,HTML7等文档,HTML5 + RDFa-lite文档或来自完全竞争标准的文档。
HTML5规范将<!DOCTYPE html>
描述为"a required preamble",这更接近标记。
这只是最短的字符序列,它会请求传统浏览器以及浏览器使用其最现代的HTML处理模式处理HTML文档。仅仅因为这个原因,它被选为HTML5的合格序言。
如果可以说它有任何意义,那就表示该文档是在2007年左右或更晚的时候创建或最后重构的。同样,反过来也不一定适用。不包含<!DOCTYPE html>
的文件并不意味着该文件是在任何特定日期之前创建的。
'<!DOCTYPE html>'是文档的文档类型。它基本上告诉Web浏览器如何呈现页面(有不同的文档类型)。如果页面使用正确的文档类型进行不正确的渲染,则意味着页面编码不正确。 – Blender 2012-02-19 05:23:33
可能重复[What's up,Doctype?](http://stackoverflow.com/questions/414891/whats-up-doctype) – animuson 2012-02-19 05:31:16
Thaks很多!正如你所说,这个问题是重复的一个。我会阅读它(可能很难找到来自“ECOTree”的不受支持的代码,但我会尝试) – zono 2012-02-19 06:24:35