# CSS-性能优化

# 提高性能的方法

  1. 合并css文件,如果页面加载10个css文件,每个文件1k,那么也要比只加载一个100k的css文件慢。
  2. 减少css嵌套,最好不要嵌套三层以上。
  3. 不要在ID选择器前面进行嵌套,ID本来就是唯一的而且权限值大,嵌套完全是浪费性能。
  4. 建立公共样式类,把相同样式提取出来作为公共类使用。
  5. 减少通配符*或者类似[hidden="true"]这类选择器的使用,挨个查找所有...这性能能好吗?
  6. 巧妙运用css的继承机制,如果父节点定义了,子节点就无需定义。
  7. 拆分出公共css文件,对于比较大的项目可以将大部分页面的公共结构样式提取出来放到单独css文件里,这样一次下载 后就放到缓存里,当然这种做法会增加请求,具体做法应以实际情况而定。
  8. 不用css表达式,表达式只是让你的代码显得更加酷炫,但是对性能的浪费可能是超乎你想象的。
  9. 少用css rest,可能会觉得重置样式是规范,但是其实其中有很多操作是不必要不友好的,有需求有兴趣,可以选择normolize.css。
  10. cssSprite,合成所有icon图片,用宽高加上background-position的背景图方式显现icon图,这样很实用,减少了http请求。
  11. 善后工作,css压缩(在线压缩工具 YUI Compressor)
  12. GZIP压缩,是一种流行的文件压缩算法。

# 性能优化

避免使用@import,外部的css文件中使用@import会使得页面在加载时增加额外的延迟。

避免过分重排

repaint

CSS动画

文件压缩

去除无用CSS

有选择地使用选择器

减少使用昂贵的属性

硬件加速的好坏