html和css中图片加载与渲染的规则是什么?

浏览器渲染web页面的过程

  1. 解析html,构成dom树
    2.加载css,构成样式规则树
    3.加载js,解析js代码
    4.dom树和样式树进行匹配,构成渲染树
    5.计算元素位置进行页面布局
    5.绘制页面,呈现到浏览器中

图片加载和渲染的过程

1.解析html,遇到<img><picture>,会加载图片,放入dom树中

2.加载css,遇到background-image时,不加载图片,放入样式树中

3.解析js,代码中有创建<img><picture>元素添加到dom树中,如果有添加background-image样式会添加到样式规则树中

4.构建渲染树时,如果dom节点匹配到样式规则中的background-iamge,会加载背景图片

5.计算图片位置进行布局

6.渲染图片

web页面中的图片不是所有都会进行加载和渲染

<img><picture>和设置background-image的元素遇到display:none时,图片会加载,但不会渲染。
<img><picture>和设置background-image的元素祖先元素设置display:none时,background-image不会渲染也不会加载,而img和picture引入的图片不会渲染但会加载
<img><picture>和background-image引入相同路径相同图片文件名时,图片只会加载一次

样式文件中background-image引入的图片,如果匹配不到DOM元素,图片不会加载

伪类引入的background-image,比如:hover,只有当伪类被触发时,图片才会加载

相关推荐
小王码农记2 小时前
CSS中自定义属性函数var()
前端·css·vue.js
BD_Marathon6 小时前
【JavaWeb】CSS浮动
前端·css
写代码的皮筏艇8 小时前
CSS中常使用的函数
前端·css
m0_740043738 小时前
Vuex中commit和dispatch的核心区别
前端·javascript·html
草字9 小时前
css 按钮的脉冲光环动画,强调动画。
前端·css
BD_Marathon9 小时前
【JavaWeb】CSS_三大选择器
前端·css
咖猫9 小时前
guacamole-web 1.5.5 index.html
前端·javascript·html
苦夏木禾9 小时前
使用css制作一个环形进度展示圈
前端·css
软件技术NINI10 小时前
html css js网页制作成品——成毅html+css+js 5页附源码
javascript·css·html
苏打水com10 小时前
第四篇:Day10-12 JS事件进阶+CSS动画——实现“复杂交互+视觉动效”(对标职场“用户体验优化”需求)
javascript·css·交互