作为一个前端,肯定知道我们写的页面是跑在浏览器里面的。
知识点梳理
- 浏览器加载页面和渲染过程(分两点说的)
加载页面和渲染过程
如下:
浏览器根据DNS服务器得到域名的IP地址
向这个IP的机器发送HTTP请求
服务器收到、处理后并返回HTTP请求
浏览器得到返回内容
例如在浏览器输入 https://www.iconfont.cn/,然后经过DNS解析。iconfont.cn对应的IP是xx.xxx.xxx.xxx(不同时间、地点对应的IP可能会不同)。然后浏览器向该IP发送发送HTTP请求。
sever端接收到HTTP请求,然后经过计算(向不同的用户推送不同的内容),返回HTTP请求。返回内容如下![](data:image/png;base64,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)
其实呢,就是一堆的HTML格式的字符串,因为只有html格式浏览器才能正确的解析,这是W3C标准的要求。
接下来就是浏览器的渲染过程
渲染过程
- 根据HTML结构生成DOM树
- 根据CSS生成CSSOM
- 将DOM和CSSSOM整合成RenderTree
- 根据renderTree开始渲染和展示
- 遇到<script>时,会执行并阻塞渲染
上面说到,浏览器已经拿到了sever端返回的HTML内容开始解析并渲染,最初拿到的内容就是一堆字符串,必须先结构化成计算机擅长处理的基本数据结构,因此就把HTML字符串转化成DOM树————树是最基本的数据结构之一。
解析过程中如果遇到<link>和<script>这样的外链加载CSS和JS标签,浏览器会异步下载,下载过程和上下文下载HTML的流程一样。只不过,这里下载来的字符串是CSS或者JS格式的。
浏览器将CSS和CSSOM,再将DOM和CSSOM整合成RenderTree,然后针对RenderTree即可进行渲染了,可想而知,有DOM结构、有样式,此时就能满足渲染条件了。另外这里也可以解释一个问题(为什么将CSS放在HTML前面?),这样就是让浏览器早点拿到CSS生成CSSOM,然后在解析HTML之后克一次性生成最RenderTree,渲染一次就行了,如果放在HTML底部,会出现渲染卡顿的情况,影响性能和体验。
最后,在渲染过程中,如果遇到<script>就停止渲染,执行JS代码。因为浏览器渲染和JS执行公用一个线程,而且这里必须是单线程操作,多线程会产生渲染DOM冲突。待<script>内容执行完后,继续渲染,最后再思考一个问题(为什么要将JS放在HTML后面?)JS 放在底部可以保证让浏览器优先渲染完现有的 HTML 内容,让用户先看到内容,体验好。另外,JS 执行如果涉及 DOM 操作,得等待 DOM 解析完成才行,JS 放在底部执行时,HTML 肯定都解析成了 DOM 结构。JS 如果放在 HTML 顶部,JS 执行的时候 HTML 还没来得及转换为 DOM 结构,可能会报错。
感谢阅读,不对之处希望各位指出,一并探讨!