前端性能优化及首页白屏解决方案

本文探讨了前端性能优化,重点在于减少白屏时间。内容包括页面渲染步骤,CRP(关键渲染路径)优化策略,如减少DOM和CSSOM渲染时间,优化HTTP请求,以及利用骨架屏和调整JS加载方式来提升用户体验。此外,还介绍了浏览器的渲染队列和如何减少回流重绘。
摘要由CSDN通过智能技术生成

一、页面之所以能渲染

1、从服务器获取需要渲染的内容
从服务器获取的是文件流(进制编码的内容)
2、浏览器基于自己的渲染引擎(例如:webkit、gecko、trident、blink)开始自上而下加载渲染的代码

二、页面渲染步骤:

1、在CSS资源还没有请求回来之前,先生成DOM树(DOM的层级关系/节点关系)
2、当所有的CSS请求回来之后,浏览器按照CSS的导入顺序,依次进行渲染,最后生成CSSOM树
3、把DOM树和CSSOM树结合在一起,生成有样式,有结构的Render TREE渲染树
4、浏览器按照渲染树,在页面中进行渲染和解析
步骤1)计算元素在设备视口中的大小和位置(布局layout或者重排/回流)
步骤2)根据渲染树一级回流得到的几何信息,得到节点的绝对像素 =》 绘制/重绘(painting)

三、CRP性能优化

1、白屏问题: 从服务器请求HTML,请求CSS资源,然后渲染,减少第一次渲染的时间,包括后续打开时间,这些优化就是项目性能优化
1)减少DOM树渲染的时间(HTML层级不要太深,标签语义化…)
2)减少CSSOM树渲染时间(选择器是从右向左解析,所以尽可能减少层级),less和sass中的层级嵌套虽然还用,但是是一个大坑
3)、减少HTTP请求次数和请求大小
4)、一般会把CSS放在页面的开始位置(提前请求资源 用link别用@i

  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值