这次给大家带来前端中页面渲染优化方法总结,前端中页面渲染优化的注意事项有哪些,下面就是实战案例,一起来看一下。
为什么做优化经典问题:白屏时间过长,用户体验差
产生的原因:网络问题、关键渲染路径(CRP)问题怎么做优化如何做好优化呢,网上随便一搜,就有很多优化总结,无非就是网络优化、静态资源(html、js、css、image)优化。下面我们撇开网络方面的优化,只分析静态资源方面的优化。而静态资源的优化关键在于你要去深入理解关键渲染路径(CRP)的运行原理和规则。一、了解浏览器关键渲染路径(html加载过程)面试必问:
1、描述一下从url输入到页面展示的全过程?
2、描述一下html加载全过程?
如何准确回答类似上面的问题呢,那么我们就需要全面了解浏览器关键渲染路径了,了解了工作原理,我们才能更好的更深入的理解静态资源的优化方案
渲染的关键路径分为以下五步
构建过程:Bytes->Characters->Tokens->Nodes->Dom
登录后复制
![图片[1]-前端中页面渲染优化方法总结-JieYingAI捷鹰AI](https://www.jieyingai.com/wp-content/uploads/2025/05/1747664073536_0.png)
构建过程:Bytes->Characters->Tokens->Nodes->CSSOM
登录后复制
![图片[2]-前端中页面渲染优化方法总结-JieYingAI捷鹰AI](https://www.jieyingai.com/wp-content/uploads/2025/05/1747664073536_1.png)
首先从上面的五步中看出,只有当DOM树和CSSOM树都构建完成之后才可以进行渲染树的构建,所以这两步是对整体渲染起阻塞作用的,当然了DOM树是必须的,它提供给页面内容,而CSSOM的必要性并不是太明显,所以在CSSOM构建的过程中可以做一些优化。在做优化前先要了解这几个知识点。
1、默认情况下,CSS是阻塞渲染的资源 2、我们可以通过媒体查询和媒体类型把一部分CSS标记为不阻塞渲染 (媒体查询的不足就是会严重影响关键渲染路径的性能) 3、浏览器**会下载所有CSS资源**、无论它阻塞还是不阻塞
登录后复制
根据上面三个知识点,会让你很清晰的知道,CSS优化可以做的事情就是,根据不同CSS使用场景和优先级的不同进行不阻塞标记。
如果是必要的CSS就请尽早的加载(1、引用位置靠前,2、减小文件体积)到客户端,这样就减少了对首次渲染的阻塞二、javascript对渲染的影响和降低影响的策略首先我们来讨论下javascript。它可以修改网页的方方面面,内容、样式、以及响应用户的交互。不过,javascript也会阻止DOM的构建和延缓网页渲染。下面我们来了解一下javascript和DOM、CSSOM的依赖关系。未优化--javascript正常加载
![图片[3]-前端中页面渲染优化方法总结-JieYingAI捷鹰AI](https://www.jieyingai.com/wp-content/uploads/2025/05/1747664073536_2.png)
优化后--javascript异步加载
![图片[4]-前端中页面渲染优化方法总结-JieYingAI捷鹰AI](https://www.jieyingai.com/wp-content/uploads/2025/05/1747664073536_3.png)
根据上面的分析,我们可以清楚的认识到,非必要优先加载的js,选择异步加载是最优选择。三、image对首屏渲染的影响图像不会阻止首屏的渲染,但是为了增加用户体验我们应该考虑加载适当大小的图片,加速图片的呈现。如何评估关键渲染路径
前面的内容让我们了解了关键路径渲染的基本原理和可能优化的机会,下面我们就需要使用一些工具,帮助我们去评估现有页面的CRP性能。
总结javascript阻止DOM构建(DOMCommentLoaded触发被延迟),css的下载和完成阻止javascript的执行。在没有javascript或者只含有异步javascript的页面中,DOM的构建和CSSOM的构建互不影响。







