浏览器渲染流程有哪些?

浏览器渲染的大致流程可分为: HTML 解析、样式计算、布局、分层、绘制、分块、光栅化、画。

其中HTML解析完成主要完成DOM树和CSSOM树的生成,其中会调用预解析线程去下载CSS、JS文件,并解析CSS和执行JS。

样式计算即根据DOM树和CSSOM树进行一个直接样式的计算,得到一个带有样式的DOM树(此DOM树包含display:none的节点)。

布局阶段,会进行一些样式补充计算(如一些百分比单位样式)及拿到节点的几何信息,得到一个布局树(注:布局树会将display:none的节点进行隔离,即不进入布局树)。

分层阶段,此阶段主要由浏览器自行操作,主要是将页面分为相互隔离的几个部分,方便后续的一些修改dom操作。

绘制阶段,此阶段主要就是生成绘制指令,告诉浏览器该怎么去画

分块阶段,即浏览器将整个页面分为若干个小块,提高运行效率

光栅化,即生成一块一块位图(位图简单来说就是什么位置该是什么样式)。

画,这一阶段就是合成线程根据位图生成指引信息,去指引浏览器的最终页面效果,然后由GPU完成屏幕成像。

最后, HTML 解析、样式计算、布局、分层、绘制在渲染主线程中完成,而分块、光栅化、画在合成线程中完成。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值