前端性能优化

个人学习总结:从htmlcssjs网络请求等方面入手

HTML

浏览器渲染顺序
  • 使用link引入外部css(避免闪屏,提高用户体验)
  • css放在head中(加快浏览器解析,html解析器和css解析器可以同时工作)
  • style放在html文档底部,或者使用defer(要放在css文件后,因为JS可以操作dom和sss)
  • body中间尽量不写style标签和script标签

CSS

  • 提取公共样式
  • 避免多层嵌套选择器
  • 使用transform代替对lefttop的操作
  • 压缩CSS文件的体积(加快网络资源请求速度)
  • 尽量使用默认字体(避免重绘)
  • opacity=0代替visiblity=hiddendisplay=none,结合图层使用
  • 将DOM离线后再修改(display=none的元素不在渲染树中,对它操作不会引发其他元素重排)
  • 为动画元素新建图层(重排、重绘的基本单位是图层)

JS

  • 绘制动画时,用requestAnimationFrame取代setTimeout
  • 模块按需加载
  • 防抖
  • 节流
  • 及时清理环境(消除定时器等)
  • 事件代理(事件委托)

网络请求

  • 减少请求资源的大小(html压缩、css压缩、js压缩、图片压缩)
  • 合并资源(将多个css,js,合成后的体积不宜过大,使用雪碧图、精灵图)
  • 使用CDN资源
  • 使用浏览器缓存

大牛的前端性能优化文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值