如果没有你<!DOCTYPE>
DOCTYPE 标签 -- 定义了标准文档的类型
DOCTYPE
标签是单独出现的- 说明:
- 文档类型,会使浏览器使用相应标准加载网页并显示
- 文档类型定义在HTML文档的第一行,在html标签之前
- 文档不定义DOCTYPE,浏览器将无法获知HTML或XHTML文档的类型,因此会进入混杂模式
- DOCTYPE,简称为
DTDs
,是英文Document type的缩写,中文“文档类型”
由此可见,如果不声明文档类型则会出现混杂模式。
何为混乱模式?
浏览器开发初期W3C倡导的网页标准并不流行,因此浏览器有独特的对网页标签或属性的解析模式,随着日后网页标准的流行,浏览器增加了对新标准的支持(Standards Mode),但又没有放弃对原有模式的兼容(Quirks mode),这就是浏览器多种表现模式的来源。
ie8有几种文档模式:混杂模式/怪异模式(会起用ie5.5文档模式来渲染文档),ie7文档模式,ie8标准
回到原来那个话题。
并不是没有指定dtd将会进入浏览器的混杂模式,是没有写DOCTYPE 才会进入。
正常来说,只要开启<!DOCTYPE html>就会进入到文档的标准模式。
可测试下
alert(document.compatMode)
如返回:BackCompat则是混杂模式。返回:CSS1Compat则是标准模式。