HTML标签之文档类型声明 <!DOCTYPE>
定义和用法: 位于HTML 文档的第一行,即 <html> 标签之前。告知浏览器页面是使用 HTML 版本进行编写的,应该用什么文档类型规范来解析,以保证正确地呈现页面内容。
常用的 DOCTYPE 声明
HTML5
<!DOCTYPE html>
HTML 4.01 Strict(严格)
此DTD 包含所有 HTML 元素和属性,但不包括展示性的和弃用的元素(比如 font),不允许框架集(Framesets)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional(过渡)
此DTD 包含所有 HTML 元素和属性,包括展示性的和弃用的元素(比如 font),不允许框架集(Framesets)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset(框架)
该 DTD 等同于 HTML 4.01 Transitional,但允许框架集内容
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
XHTML 是更严格更纯净的 HTML 版本,所以XHTML 1.0 的文档声明类型和 HTML 4.01的标准没太多区别,只不过要求必须以格式正确的 XML 来编写标签。
XHTML 1.0 Strict(严格)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional(过渡)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.0Frameset(框架)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
如果文档包含严格的 DOCTYPE ,那么它以(standard)严格模式(也叫标准模式)呈现。如果 DOCTYPE 不存在或者格式不正确,就会导致文档以(quirk)怪异模式(也叫混合模式)呈现。
扩展: 严格模式和怪异模式的区别