浏览器渲染机制

2017-05-06  本文已影响0人  七_五

在web开发的过程中知道和了解浏览器是如何进行页面渲染的,可以帮助我们在开发的过程中更好的写出高质量代码。

一、HTML和CSS的渲染

注意: 不同的浏览器对于渲染树的构造顺序是不同的,如webkit内核是同时(或先后)解析HTML、CSS,然后待两者分别解析完成,在一次成型组合成为渲染树;而Firefox浏览器在同时(或先后)解析HTML、CSS的同时,根据顺序依次的组合成渲染树(可能分多次形成),这样在用户浏览的时候会出现从无样式到样式多次变化的一个过程

二、JS脚本的渲染

浏览器渲染JS脚本的时候有一个十分重要的特性:脚本会阻塞后面内容的呈现和其后组件的下载
对于图片与CSS,在加载的时候可以并发加载。但在js(单线程语言)脚本的时候,会禁用并发,并且阻止其他内容的下载。

三、加载异步

<script  src="script.js"></script>

浏览器会立即执行加载指定的脚本,“立即”可以理解为该渲染script标签之下的文档元素之前,也就是说不等待后面载入的文档元素,读到就加载执行

<script async  src="script.js"></script>

添加async后,加载和渲染后续文档的过程江河script.js的加载与执行并行进行(异步)

<script defer  src="script.js"></script>

功能与async类似,但script.js的执行要在所有的元素解析执行完成之后,DOMContentLoaded事件触发之前完成。

问答

1、CSS和JS在网页中的放置顺序是怎样的?

2、解释白屏和FOUC

3、async和defer的作用是什么?有什么区别

4、简述网页的渲染机制
详见上述一、HTML和CSS的渲染

上一篇下一篇

猜你喜欢

热点阅读