DOM

解析为DOM

一、HTML嵌套解析,解析时候解析为数据对象映射反应这里的嵌套模型
二、DOM(Document Object Model)是一棵树,树有父子,邻居的关系,而且这棵树是暴露API给JS调用,JS可以查询和修改这棵树。JS引擎V8通过bindings的系统将DOM包装为DOM API供给Web开发者调用
image.png
image.png

文档可能包含多个DOM树

渲染流水线(简版) - 图3
渲染流水线(简版) - 图4
一、如上图的示例,自定义元素custom element有shadow tree。ShadowRoot的子元素其实被嵌入到slot元素里了,这跟各大前端框架的slot其实很像。
二、其实最后是在遍历树后合成视图,也就是两棵树合并为一棵树

Style

渲染流水线(简版) - 图5
渲染流水线(简版) - 图6
一、style步骤依赖前置的DOM树解析结果,选择器是选择DOM节点集合决定最后应用范围,最后样式生效是多个选择器共同作用的结果,而且样式间可能互相冲突导致没有按照预期运行。
渲染流水线(简版) - 图7
二、CSS解析器样式表StyleSheet构建样式规则。样式表可能位于