https://www.html5rocks.com/zh/tutorials/internals/howbrowserswork/#The_order_of_processing_scripts_and_style_sheets
1、浏览器组件
讲了浏览器的几大组件:
2、呈现引擎:(负责显示请求的内容)
主要讲了呈现引擎的流程的分类,webkit 跟gecko,以及他们的执行流程
3、解析:包含解析器跟词法分析器。
里面讲解了解析算法。其中解析算法分为两个阶段(标记化和树构建)
4、浏览器容错:浏览器用户量庞大的一个重要因素
5、呈现树:
讲解了呈现树与dom的关系,解决了规则树构建的三个问题:
(1)样式数据是一个超大的结构,可能会造成内存问题。(通过树状继承)
(2)应用规则涉及到相当复杂的层叠规则(通过树状继承)
(3)规则匹配耗时耗cpu(通过hash解决)
6、布局:计算位置跟大小
分全局跟增量。
布局可以优化。
7、绘制:全量绘制跟增量绘制。
8、事件循环:
浏览器的主线程,它是一个无限循环,永远处于接受处理的状态,并等待事件发生。
网友评论