浏览器如何渲染页面

2017-10-07  本文已影响0人  曾祥辉

1. CSS和JS在网页中的放置顺序是怎样的?

2. 解释白屏和FOUC

原因:因为浏览器对HTML元素和CSS的解析渲染需要一个过程,构建好DOM树和cssom树之后再组合成渲染树(render tree),如果在构建DOM树和cssom树时,请求html元素或css样式表出现阻塞,将无法组合成渲染树即无法将内容绘制到屏幕上,此是部分浏览器会将页面以白屏的方式展示。而FireFox等部分浏览器的渲染机制不同会将已经请求成功的元素和样式组成渲染树,先绘制已加载的部分,如果后续有新加载的元素和样式将再刷新渲染树,继而刷新页面内容,直到完全加载,即FOUC(无样式内容闪烁)。

3. async和defer的作用是什么?有什么区别

4. 简述网页的渲染机制

  1. 首先解析html标签形成,DOM树
  2. 然后解析css,构建cssom树
  3. 把DOM和CSSOM组合成渲染树(render tree)。
  4. 在渲染树的基础上进行布局,计算每个节点的几何结构。
  5. 把每个节点绘制到屏幕上(painting)。

投稿

上一篇 下一篇

猜你喜欢

热点阅读