JavaScript:DOCTYPE的作用及渲染过程

版权声明:本人原创文章,转载请注明出处 https://blog.csdn.net/qq_28766729/article/details/84313231

1.定义

DOCTYPE标签是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。

<!DOCTYPE html> 声明必须是 HTML 文档的第一行,位于<html> 标签之前。

2.作用

DOCTYPE声明的主要作用就是声明文档的解析类型(document.compatMode),避免浏览器的怪异模式。也就是改变了渲染模式

  • BackCompat:怪异模式,浏览器使用自己的怪异模式解析渲染页面。

  • CSS1Compat:标准模式,浏览器使用W3C的标准解析渲染页面。

这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明,那么compatMode默认就是BackCompat

浏览器按照自己的方式解析渲染页面,那么,在不同的浏览器就会显示不同的样式。

如果你的页面添加了<!DOCTYPE html>,那么就等同于开启了标准模式。那么浏览器就得老老实实的按照W3C的标准解析渲染页面,这样一来,你的页面在所有的浏览器里显示的就都是一个样子了。

这就是<!DOCTYPE html>的作用。

3.渲染模式历史意义

  • 渲染模式有标准模式和怪异模式,
  • 以前的浏览器发展处于各自比较封闭的发展(没有兼容可谈)随着WEB发展,需要解决兼容性,后来出台了公认的标准。
  • 但以前的网站,不支持标准模式,所以各浏览器加入标准模式的同时也保留了怪异模式(即以前那种未按照统一标准工作的模式,也叫混杂模式)。
  • 但怪异模式已经被现在的标准化给终结掉了,已经成为历史。使用怪异模式,和现在的标准模式区别也不大。
  • 在老版本IE上才能看出来很大的区别。

4.什么是渲染

渲染:在电脑绘图中是指使用软件从“模型”生成“图像”的过程。
渲染引擎:其职责就是渲染,即在浏览器窗口中显示所请求的内容。
渲染过程:解析html -> 构建DOM树 -> CSS Rule树 -> 构建Render树 ->布局Render树 -> 绘制Render树

猜你喜欢

转载自blog.csdn.net/qq_28766729/article/details/84313231