为确保浏览器向后兼容而产生的,我们通过document.compatMode这个属性来检测,当前页面处于何种模式
混杂模式(BackCompat):
当文档开始处没有声明文档类型时,默认启用混杂模式,或者声明格式有误时以一种比较宽松的向后兼容的方式显示。混杂模式通常模拟老式浏览器的行为以防止老站点无法工作。
标准模式(CSS1Compat):
浏览器以其支持的最高标准呈现页面,在文档开头声明文档类型,例如<!DOCTYPE html>,会按照html的标准解析文档
模式触发
浏览器根据DOCTYPE是否存在以及使用的哪种DTD来选择要使用的呈现方法。如果XHTML、HTML 4.01文档包含形式完整的DOCTYPE,那么它一般以标准模式呈现。
包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过渡DTD而没有URI会导致页面以混杂模式呈现。
DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。