整理下关于DOCTYPE 的介绍。你可以简单了解DOCTYPE 。
提到 DOCTYPE 就一定要了解下DTD。DTD(文档类型定义) 是一组机器可读的规则,它们定义XML或HTML的版本中可以有什么,不可以有什么。在解析网页时,浏览器将使用这些规则检查页面的有效性并且采取相应的措施。 浏览器同过分析页面的DOCTYPE声明来了解使用哪个DTD,由此知道要使用HTML的哪个版本.
注:DOC通常--但不总是包含指定的DTD文件的URL。例如,HTML5就不需要URL。浏览器一般不去读取这些文件,而是识别常见的DOCTYPE声明
1.浏览器模式
当浏览器厂商开始创建与标准兼容的浏览器时,他们希望确保向后兼容一些,为了实现这一点他们创建了两种呈现模式:标准模式和混杂模式。
在标准模式中,浏览器根据规范呈现页面。
在混杂模式中,页面已一种宽松的向后兼容的方式显示。(混杂模式通常模拟老式浏览器的行为以防止老站点无法工作.)
那么什么时候是标准模式,什么时候是混杂模式呢?请接着看.
2.DOCTYPE切换
出现标准模式条件: 浏览器根据DOCTYPE是否存在以及使用的哪种DTD来选择要使用的呈现方法.如果XHTML文档包含形式完整的DOCTYPE,那么它一般已标准式呈现。
对于HTML4.0文档,包含严格DTD的DOCTYPE常常导致页面已标准模式呈现。包含过渡DTD和URl的DOCTYPE也导致页面已标准模式呈现.
出现混杂模式条件:有过渡DTD而没有URI会导致页面以混杂模式呈现。DOCTYPE不存在或形式不正确会导致HTMl和XHTML文档以混杂模式呈现.