css会在特定情况造成dom解析阻塞

场景

    当解析到JS时,如果前面还存在没有解析完成的CSS,则当前JS解析会被阻塞(因为浏览器无法判断js会不会去获取dom的style属性,只能先等css完成解析),直到前面的所有CSS都完成解析。
    众所周知同步js执行肯定会阻塞dom的解析。
    这个时候就造成了一种现象即:因为在解析js,但是css的还没完成解析,此时js阻塞等待css解析完成,js同时阻塞了html,所以css解析间接阻塞了dom的解析。

优化的办法

1.js设置为defer或者async
2.动态插入外联js
3.js放在body外的底部
4.css放在head中