css为啥会阻塞渲染
来源:6-1 重绘与回流-css 性能让 Javacript 变慢?

斜杠男人
2018-09-06
css为啥会阻塞渲染
写回答
2回答
-
同学你好,该内容在课程4-4中有讲解,具体来说就是javascript的执行可能存在样式操作,这依赖于css的加载完成,所以css加载完之后才会去执行javascript。
理论上来说,css不会更改 DOM 树,因此似乎没有必要等待样式表并停止文档解析。但这涉及到一个问题,就是脚本在文档解析阶段会请求样式信息。如果当时还没有加载和解析样式,脚本就会获得错误的回复,这样显然会产生很多问题。这看上去是一个非典型案例,但事实上非常普遍。Firefox 在样式表加载和解析的过程中,会禁止所有脚本。而对于 WebKit 而言,仅当脚本尝试访问的样式属性可能受尚未加载的样式表影响时,它才会禁止该脚本。
所以,之所以css会阻塞渲染,也是浏览器开发者在设计的过程中,对于流程模块依赖关系的梳理得到的相对优化和简便的处理,是他们的浏览器内核的代码逻辑决定的,如果同学有兴趣,可以详细看看webkit的一些实现。
希望这个回答对你有帮助。
00 -
千迦
2018-09-07
同学你好 你的问题已经看到了 稍后会进行回复
00
相似问题