浏览器渲染路径,先构建 DOM 树,再构建 CSSOM 树,DOM 树再与 CSSOM 树合并为渲染树,之后再进行布局、绘制,完成渲染过程。
其中,html、css、js 的加载都会影响页面的渲染速度,而渲染树必备要素为 html 和 css ,所以要尽可能让他们提前渲染,js 则尽可能滞后加载。
另外改变 js 执行阻塞的时机还有两者方式,给 script 标签 增加 async 和 defer
async:JS 的下载和 HTML 的解析并行进行,但只要 JS 下载完成,就马上开始执行,同时阻塞 HTML 解析。
defer:JS 的下载和 HTML 的解析并行进行,但直到 HTML 解析结束,才执行 JS。