HTML5不基于SGML,因此不需要引用DTD

Aqu*_*irl 4 html dtd

来自:http://www.w3schools.com/tags/tag_doctype.asp

<!DOCTYPE>声明不是HTML标记; 它是Web浏览器关于页面编写的HTML版本的指令.

在HTML 4.01中,<!DOCTYPE>声明引用DTD,因为HTML 4.01基于SGML.DTD指定标记语言的规则,以便浏览器正确呈现内容.

HTML5不基于SGML,因此不需要引用DTD.

提示:始终将<!DOCTYPE>声明添加到HTML文档中,以便浏览器知道所期望的文档类型.

粗体语句是否意味着当我们使用HTML 5时,我们不需要指定<!DOCTYPE html>
这句话到底意味着什么?

我目前正在使用浏览器Firefox 4在我的html文件中使用<!DOCTYPE html>.我删除了该声明,但没有看到渲染输出有任何差异.这是否意味着问题可能发生在旧浏览器中而不是新浏览器中?

Mat*_*tor 6

术语令人困惑,但DTD(文档类型定义)只是文档类型声明的一部分(通常缩写为"doctype").您应始终包含doctype 声明(<!DOCTYPE html>如果使用HTML5),但不再需要文档类型定义标识符.

为了提供一个具体的例子,这就是HTML4.01文档类型声明("doctype")可能看起来像:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Run Code Online (Sandbox Code Playgroud)

上述声明中的文档类型定义("DTD")标识符是以下部分:

"-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"
Run Code Online (Sandbox Code Playgroud)

这是你可以为HTML5留下的部分."PUBLIC"指定DTD的可用性,因此如果没有DTD,也不应包括它.

  • 长话短说,只需在HTML文档的顶部输入`<!doctype html>`(不区分大小写). (2认同)