前端开发:优化关键渲染路径
创作时间:
作者:
@小白创作中心
前端开发:优化关键渲染路径
引用
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
图片资源不会阻塞首次渲染,但会影响页面的整体加载速度。
通过理解这些渲染原理和资源加载方式,开发者可以更好地优化关键渲染路径,提升网页加载速度和用户体验。
热门推荐
中国人健康水平和寿命不断上升,是仿制药的功劳吗?
京剧之声,余韵悠长-10首经典京剧歌曲赏析
统计入门系统知识--Logistic回归分析
中耳炎是怎么回事
苹果"锁定模式"详解:如何开启及功能限制全攻略
鼓山一日游攻略,探秘福州这座山水名山,感受自然之美
使用可解释强化学习提升自动驾驶决策的透明度与安全性技术详解
重温《教父》:权力与家族的永恒经典
Steam商店国家地区怎么改?图文详解轻松切换低价区
全麻下小孩心脏手术后恢复清醒需要多长时间
全麻下小孩心脏手术后恢复清醒需要多长时间
《战场女武神3》:三个结局背后的人性思考
《大河之水》:许亚军的硬核演技!不愧是“祁厅”,遇事从来不慌
公证处上门公证流程是怎样的
解放军陆军都在使用哪些轻武器?新老步枪接替,战斗力大幅提升
如何制定企业技术创新管理的战略规划?
初级会计实务高频考点讲解:现金流的含义及内容
梦见自己抓了一条大鱼
《大明王朝 1566》中,政治智慧的排名是怎样的?
台湾十大必游景点:自然与文化的完美融合
探索台北夜市仙境:台湾最佳街头美食和购物指南
莲花峰茶:探究其寒性特质与适宜饮用时机
肠道菌群失调:身体内部的一场“无声战争”
感到焦虑抑郁?可能是你的肠道菌群在“作祟”?
心电图心肌缺血的诊断与治疗
儒家礼教的束缚与变迁:探索封建社会中礼教对人们生活的影响及其在现代文化中的延续
世界十大足球强国历史综合排名,南美豪强占三席
为什么吃芋头胃疼呢
唇炎挂皮肤科还是口腔科
笔记本清灰实战指南