在html文档里,为啥文档的第一行就是<!DOCTYPE>嘞?
来学习了解一下它吧.
1-认识DOCTYPE
定义:A document type declaration, or DOCTYPE, is an instruction that associates a particular SGML or XML document (for example, a webpage) with a document type definition (DTD) (for example, the formal definition of a particular version of HTML1.0 - HTML 4.0).[1]
In the serialized form of the document, it manifests as a short string of markup that conforms to a particular syntax.
<!DOCTYPE>是一种标准通用标记语言(SGML)的文档类型声明,它的目的是要告诉SGML解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。它位于文档中最前面的位置,处于<html>
标签之前.但并不是 HTML 标签喔~
2-网页为什么需要DOCTYPE呢?
在HTML中,doctype是所有文档顶部所需的“ 序言“。其唯一目的是防止浏览器在呈现文档时转换成所谓的“怪异”模式; 也就是说,doctype确保浏览器尽力尝试遵循相关规范,而不是使用与某些规范不兼容的不同渲染模式。
DOCTYPE用来告知 Web 浏览器页面使用了哪种 HTML 版本,只有确定了一个正确的文档类型,HTML或XHTML中的标签和层叠样式表才能生效,甚至对JavaScript脚本都会有所影响。
3-DOCTYPE的用法
所有主流浏览器都支持 <!DOCTYPE> 声明。在html/xhtml的不同版本里,DOCTYPE的用法也不同.在基于SGML的HTML版本里,DOCTYPE声明需要引用DTD,否则不要求引用DTD.
此外,DOCTYPE对大小写并不敏感.以下列举常用的DOCTYPE用法.
- HTML 5(不基于SGML):
<!DOCTYPE html>
-
HTML 4.01 Strict(严格文档类型):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -
HTML 4.01 Transitional(过渡文档类型):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -
HTML 4.01 Frameset(框架集文档类型)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
- 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 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
- XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
网友评论