如果在文档类型中未提及,默认网页 DTD 是什么?



由于网页第一行(通常)中的文档类型设置,网页呈现似乎存在很大差异。

所以我想知道如果不提及默认 DTD 会是什么

例如,如果简单地这样说:

<!DOCTYPE html>

由于网页第一行(通常)中的 Doctype 设置,网页呈现似乎存在很大差异。

浏览器使用 Doctypes 作为魔术字符串在 Quirks 模式和标准模式(以及几乎标准模式)之间切换。你需要一个真正的SGML/XML解析器来关心DTD。

所以我想知道如果不提及默认 DTD 会是什么

如果有公共标识符但没有系统标识符,则解析器应在本地目录中查找 DTD。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ — Formal Public Identifier

但是,您拥有的是HTML 5 Doctype,它的设计只不过是魔术模式切换字符串。HTML 5 显然不是基于 SGML 的。因此,根本没有与之关联的 DTD。

这是HTML5文档类型声明。

最新更新