DOCTYPE,严格模式与混杂模式

文档声明的作用

  • 告知浏览器文档使用哪种 HTML 或 XHTML 规范

  • Doctype可声明三种DTD类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。

  • 当浏览器厂商开始创建与标准兼容的浏览器时,他们希望确保向后兼容性。为了实现这一点,他们创建了两种呈现模式:标准模式和混杂模式

  • 在标准模式中,浏览器以其支持的最高标准呈现页面,;
  • 在混杂模式中,页面以一种比较宽松的向后兼容的方式显示。混杂模式通常模拟老式浏览器的行为以防止老站点无法工作。

模式触发

  • 浏览器根据DOCTYPE是否存在以及使用的哪种DTD来选择要使用的呈现方法。
    如果XHTML、HTML 4.01文档包含形式完整的DOCTYPE,那么它一般以标准模式呈现。
  • 包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过渡DTD而没有URI会导致页面以混杂模式呈现。
  • DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。
    html5既然没有DTD,也就没有严格模式与宽松模式的区别,html5有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。
  • 告诉浏览器这个文档类型是HTML

你可能感兴趣的:(DOCTYPE,严格模式与混杂模式)