accountable 5楼
常识:<!DOCTYPE>声明位于HTML文档中的第一行,处于<html>标签之前,告知浏览器的解析器是用什么文档标准来解析这个文档。DOCTYPE不存在或者格式不正确会导致文档以兼容模式呈现。
HTML5不基于SGML,因此不需要对DTD进行引用,但是需要DOCTYPE来规范浏览器的行为(让浏览器按照它们应该的方式来运行);而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。
没有定义doctype才会开启怪异模式,也就是说你只需要定义<!doctype html>就可以让浏览器在严格模式(标准模式)下渲染页面,而不需要指定某个类型dtd。所有的浏览器都需要两种模式:怪异模式和严格模式(标准模式):
1:在标准化之前写的页面是没有doctype的,因此没有doctype的页面是在怪异模式下渲染的
2:如果开发过程中加入的doctype,说明他知道他要做的事情,大部分的doctype会开启严格模式(标准模式),页面会按照该标准来渲染.
3:任何新的或者未知的doctype都会开启怪异模式(标准模式)。
4:每个浏览器都有自己的方式来激活怪异模式。清单:http://hsivonen.iki.fi/doctype/
转载处https://i.wanz.im/2010/05/28/why_doctype_html/
HelloTuring 12楼
html5标准网页声明,原先的是一串很长的字符串,现在是这个简洁形式,支持html5标准的主流浏览器都认识这个声明。表示网页采用html5