十五张图带你完全搞懂从URL到页面展现发生的故事

关注公众号“ 执鸢者”,获取大量教学视频并进入 专业交流群

某一天小林去面试,面试官说问你一道经典面试题吧,从“ 输入一个URL到页面展现中间发生了什么?”,小林一听激动了,内心暗自高兴说这道题我背过呀,而后哗啦哗啦开启了背书模式。背完以后面试官不是很满意,思路并非很清晰呀!!!(纯属我的杜撰的小故事,切勿当真。)

下面就让咱们来唠一唠这个小问题,有不许确的地方还望各位大佬指正。对于这个问题将从浏览器包含的进程着手,而后用用一张图来展现总体流程,最后分别从导航阶段渲染阶段两个方面详细阐述从输入一个URL到页面展现中间发生的过程。前端

1、浏览器进程

在聊上述话题以前要意识到目前浏览器处在多进程时代,包含 浏览器进程、渲染进程、GPU进程、网络进程、插件进程

2、总体流程

用一张图来表示整个流程,整个流程包含 导航阶段渲染阶段两大部分,其中每一个具体细节所须要的进程以下图所示。

3、导航阶段

导航阶段主要包含 用户输入、URL请求、准备渲染进程、提交文档四个部分

3.1 用户输入

3.2 URL请求过程

3.3 准备渲染进程

3.4 提交文档

4、渲染阶段

当文档数据传输完成后将进入渲染阶段,渲染阶段主要包含 构建DOM树、样式计算、布局阶段、分层、图层绘制、分块、栅格化操做、合成和显示。其整个渲染阶段流程以下图所示。

4.1 构建DOM树

4.2 样式计算

4.3 布局阶段

4.4 分层

4.5 图层绘制

4.6 分块

4.7 栅格化操做

4.8 合成和显示

参考内容 浏览器工做原理与实践_李兵

相关章节
图解23种设计模式
40张图入门Linux面试

欢迎你们关注公众号(回复“操做系统”获取本节的思惟导图,回复“书籍”获取大量前端学习资料,回复“前端视频”获取大量前端教学视频)
设计模式

相关文章
相关标签/搜索