前端开发:优化关键渲染路径
创作时间:
作者:
@小白创作中心
前端开发:优化关键渲染路径
引用
CSDN
1.
https://blog.csdn.net/weixin_33750452/article/details/89073105
浏览器渲染性能是前端开发中一个重要的优化方向。本文将深入探讨浏览器渲染原理以及CSS、JS、Font、img等资源对渲染的影响,帮助开发者更好地优化关键渲染路径,提升网页加载速度和用户体验。
浏览器渲染原理
浏览器渲染过程主要包括以下几个步骤:
- DOM(文档对象模型)构建:解析HTML代码,构建DOM树。
- CSSOM(CSS对象模型)构建:解析CSS代码,构建CSSOM树。
- RenderTree(渲染树)构建:结合DOM和CSSOM,生成渲染树。需要注意的是,CSS选择器越详细,匹配工作越多,匹配节点越慢。
- Layout(布局):计算渲染树节点的位置和大小。在移动端,如果不设置viewport宽度为理想视口,viewport宽度通常为980px,这会导致文字很小,需要手动放大阅读。
- Paint(绘制):根据背景、边框、阴影等样式,将布局生成的区域填充为最终将显示在屏幕上的像素。
资源对渲染的影响
CSS
CSS的加载和解析对初次渲染有重要影响:
- 通过
<style>
标签或<link rel="stylesheet">
引入的CSS会阻塞初次渲染。 - 使用
media query
可以避免非关键CSS资源阻塞初次渲染。 preload
方式不会阻塞渲染,但会提前加载资源。
JavaScript
JavaScript的加载和执行对HTML解析器有重要影响:
- 内联JS和外部JS都会阻塞HTML解析器。
- 使用
defer
属性可以将脚本推迟到整个HTML文档解析完后执行。 - 使用
async
属性可以让脚本异步加载,不会阻塞HTML解析器。
Font
字体资源的加载对内容渲染有重要影响:
- 浏览器为了避免FOUT(未样式化文本闪烁),会尽量等待字体加载完成后才显示应用了该字体的内容。
- 这可能导致FOIT(内容不可见闪烁)问题,即内容无法尽快展示,导致空白。
img
图片资源不会阻塞首次渲染,但会影响页面的整体加载速度。
通过理解这些渲染原理和资源加载方式,开发者可以更好地优化关键渲染路径,提升网页加载速度和用户体验。
热门推荐
备孕女性如何调理碱性体质
一文读懂血糖值:从2.8到33.3,每个数字都在说些什么?
改变酸性体质吃什么食物比较好
谈谈劳逸结合的重要性
美国五星上将麦克阿瑟的传奇人生:从菲律宾的失败到日本的“太上皇”
从常州到淮安:227.6公里的自驾游完美攻略
何晏、王弼:玄学的开山鼻祖
年轻人为何爱上寺庙游?
腿上有这6个表现,多半是糖尿病神经病变,尽快就医
了解糖尿病,远离“糖”危害
Front Endocrinol:糖尿病周围神经病变:年龄分层血糖控制
潮汕大厨教你沙茶辣完美调配
大方的女性,更具吸引力
12385:一条热线,温暖千万残疾人的心
心脏病电解质紊乱的四种治疗方法
游戏叙事研究:浅谈《隐形守护者》中的剧情选择与叙事设计
年味十足!国潮文创产品“圈粉”年轻人
古老节日“新玩法”,现在的端午节还是这么热闹
二甲双胍缓释片正确服用全攻略:时间、方式与注意事项
黑椒牛肉杏鲍菇——美味与营养的完美结合
10分钟轻松学会!牛肉滑蛋,家常美味的极致享受
失落王冠楪祈人物图鉴 楪祈角色资料介绍
竹林七贤:魏晋玄学的代表与文化传承
魏晋玄学:以“无”为本的哲学思潮
佛教与魏晋玄学:一场跨越千年的思想对话
蚝油牛肉做法详解,嫩滑鲜香,酱香浓郁,家庭餐桌必备美味
盘点牛里脊的7大家常做法,解馋低脂高蛋白,保姆级下饭菜攻略
牛里脊/牛柳牛里脊的部位与特点
顺丰快递丢失?教你三招搞定赔偿!
保健品包裹丢失引赔偿争议,法院判决:未保价只能赔1000元