浅谈css优化和提高性能的办法

加载性能优化

1、css压缩:将css打包压缩,可以减小文件体积

2、css单一样式:使用margin-left,margin-bottom这种,比使用margin复合属性更快

3、减少使用@import,多使用link

选择器性能优化

1、关键选择器:选择器最后面的部分作为关键选择器,因为css选择符是从右向左进行匹配的,当使用后代选择器的时候,浏览器会遍历所有子元素来确定是否是指定的元素

2、如果规则拥有ID选择器作为其关键选择器,则不要为规则增加标签,过滤掉无关的规则

3、避免使用通配规则*{}

4、尽量少的用标签选择器,而是使用class选择器

5、如果规则拥有ID选择器作为其关键选择器,则不要为规则增加标签

6、尽量将选择器深度降低,最多不要超过三层,更多的使用类来关联标签

7、了解属性的继承,避免重复指定规则

渲染性能优化:

1、慎重使用高性能属性:浮动、定位

2、尽量减少页面重排、重绘

3、去除空规则{}

4、属性值为0时,不加单位

5、属性值为浮动小数0.**,可以省略小数点之前的0

6、标准化各种浏览器前缀:带浏览器前缀的在前。标准属性在后

7、不适用@import前缀

8、选择器优化嵌套,避免层级过深

9、css精灵图、雪碧图

10、正确使用display属性

11、不滥用web字体

可维护性、健壮性:

1、具有相同属性的样式抽离出来,整合并通过class在页面中进行使用,提高css的可维护性

2、样式与内容分离:将css定义到外部css中

相关推荐
索西引擎几秒前
【React】Immer.js 在现代 Redux 生态中的角色:不可变性保障的工程化实现与开发体验优化
前端·javascript·react.js
大卫陈12 分钟前
微信小程序虚拟支付实战:从「支付能力被限制」到沙箱调通的全过程
前端·后端
武子康12 分钟前
vLLM 0.25.1:服务没有报错,为什么仍会生成垃圾 Token(5 级正确性门禁 + 自动回滚条件)
前端·人工智能·后端
jyp2012110716 分钟前
Vue3 Diff 算法
前端·vue.js
胡萝卜术20 分钟前
抽象的三级跳:从原生 DOM 到 React 组件树,我们到底在解决什么问题?
前端·javascript·面试
黄敬峰23 分钟前
从零理解React:事件、组件与响应式——一个WebGPU Demo的前端笔记
前端·面试
weedsfly37 分钟前
从类继承到自定义 Hook:模板方法模式的前端演进
前端·javascript·面试
Quz38 分钟前
QML 线性布局:Row/RowLayout 与 Column/ColumnLayout
前端·qt
你为她披上外套时我正站在窗外42 分钟前
用 Rust + WebAssembly 写了个字幕工具,文件全程不离开浏览器
前端
帅帅哥的兜兜42 分钟前
AI模型初了解
前端