性能优化之代码层 css

时间:2021-05-15 01:16:48

 从以下几个方面考虑:

  1. css压缩
  2. css单一样式更好,例如margin-bottom:10px;margin-top:10px;
  3. 减少使用@import,建议使用link,link在页面加载时一起加载,@import等页面加载完成后再进行加载
  4. 减少使用标签选择器,而是用class
  5. 避免使用通配符选择器*{}
  6. 了解哪些属性是可以通过继承而来的,然后避免对这些属性重复使用
  7. 尽量减少页面的重排、重绘
  8. 公共样式抽离出来,整合并通过class在页面中使用
     

避免重绘回流


注意:触发回流定会触发重绘,重绘不一定引发回流

引起回流:

页面的首次渲染
浏览器窗口大小发生变化
元素内容发生变化
元素的尺寸或者位置发生变化
元素的字体大小发生变化
添加或者删除可见的DOM元素
激活css伪类
 

导致重绘:

color/background相关属性background-color,background-image等属性
outline相关属性outline-color,outline-width
border-radius/visibility/box-shadow

减少回流与重绘:

尽量不使用table布局
不要频繁操作元素的样式,可以采用修改类名
使用absolute或者fixed,使元素脱离文档流
将元素设置display:none,操作结束再把它显示出来。因为在display属性为none的元素上进行DOM操作不会引起回流和重绘