网页的样式设计是由CSS来完成的。CSS的渲染流程可以用一张图来表示。
+-----------------------+ | DOM树 | +-----------|-----------+ V +-----------------------+ | CSSOM树 | +-----------|-----------+ V +-----------------------+ | Render Tree渲染树 | +-----------|-----------+ V +-----------------------+ | Layout布局 | +-----------|-----------+ V +-----------------------+ | Paint绘制 | +-----------|-----------+ V +-----------------------+ | Compose合成 | +-----------------------+
以上是CSS的渲染流程图,下面分别介绍每个阶段。
1. DOM树
DOM树是指浏览器将HTML文档转换成一棵树形结构,每个HTML标签都被解析为一个元素节点。
2. CSSOM树
CSSOM树是指将CSS样式表转换成的一棵树形结构,每个CSS样式被解析为一个规则,并存储在CSSOM树的节点中。
3. Render Tree渲染树
Render Tree渲染树是由DOM树和CSSOM树结合生成的一棵树形结构。渲染树只包含需要显示的节点,例如display:none的节点不会被包含在渲染树中。
4. Layout布局
Layout布局是指浏览器根据渲染树的节点计算它们在屏幕上应该显示的位置,大小,对齐方式等。
5. Paint绘制
Paint绘制是指使用绘制引擎将最终的布局转换成像素,并为每个节点着色。
6. Compose合成
Compose合成是指将多个图层合并成一个最终的渲染结果,并发送给GPU进行显示。
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did222120