当然,我只是在扯淡

DOCTYPE(文档类型)的作用是什么?

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

  由于历史的原因,浏览器对页面的渲染方式是不一样的。在W3C标准出来之前,浏览器对页面的渲染没有同一的标准,产生了差异,quirks mod(混杂模式或者兼容模式),但在W3C标准出台之后,浏览器对页面的渲染有了同一的标准即(严格模式或标准模式)。但是为了保证以前就得页面仍然正常显示,有的浏览器就保存了这两种渲染模式(标准兼容模式)。那么究竟采用哪一种方式进行渲染,就要看DOCTYPE生命中的DTD。  

1、文档类型定义(DTD)Document Type Definition

  是一套为了进行程序间的数据交换而建立的关于标记符的语法规则。
  可通过比较文档和文档类型定义文件来检查文档是否符合规范,元素和标签使用是否正确。

2、两种呈现模式:标准模式和混杂模式

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

3、模式触发

  浏览器根据DOCTYPE是否存在以及使用的哪种DTD来选择要使用的呈现方法。
   
如果XHTML、HTML 4.01文档包含形式完整的DOCTYPE,那么它一般以标准模式呈现。
  
包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过渡DTD而没有URI会导致页面以混杂模式呈现。
  
DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。

 

html5既然没有DTD,也就没有严格模式与宽松模式的区别,html5有相对宽松的语法,事实上,已经尽可能大的实现了向后兼容。

 

 

 

posted @ 2018-05-02 09:49  胜天尊  阅读(3711)  评论(1编辑  收藏  举报