- 减少重排:
- 查询某些属性或调用某些方法(如:getComputedStyle()、getBoundingClientRect())
建立公共样式类,把相同样式提取出来作为公共类使用。合并css文件减少http请求,如果页面加载10个css文件,每个文件1k,那么也要比只加载一个100k的css文件慢。减少css嵌套,加速css解析,最好不要嵌套三层以上。- 减少@import,尽量用link;首先,使用@import引入css会影响浏览器的并行下载。使用@import引用的css文件只有在引用它的那个css文件被下载,解析之后,浏览器才会知道还有另外一个css需要下载,这时才去下载,然后下载后开始解析,构建render tree等一系列操作,这就导致浏览器无法并行下载
所需的样式文件。
其次,多个@import会导致下载顺序紊乱,在IE中,@import会引发资源文件的下载顺序被打乱,即排列在@import后面的js文件优先于@import下载,并且打乱甚至破坏@import自身的并行下载。所以不要使用这一方法,使用link标签就行了。