What:
DOCTYPE声明文档类型,以便验证文档是否符合文档类型定义(DTD),同时指定了浏览器关于页面使用哪个HTML版本进行编写的指令。
When:
当指定了浏览器关于页面使用哪个HTML版本进行编写的指令。
Why:
DOCTYPE声明不是html标签,必须放在html文档的第一行,而且绝不能在它之前添加xml声明语句,否则在IE6会触发怪异模式。在HTML 4.0中,DOCTYPE引用了DTD,因为HTML 4.0基于SGML。DTD规定了标记语言的规则,这样浏览器才能正确的呈现内容。HTML5不是基于SGML,所以不需要引用DTD。
How:
HTML4支持三种DOCTYPE声明,而HTML5只支持一种,即:
<!DOCTYPE html>
HTML4支持的三种DOCTYPE声明分别是严格型(strict)、过渡型(transitional)和框架型(Frameset)。