利用img请求一个html页面,一个关于img的请求次数的问题

如下:

525e8f77889b

这里有三个关于图片的加载(三张图片不一样),那么display:none和visibility:hidden是否对img的请求造成影响呢?

我们来验证一下便知晓,Chrome的F12查看Network:

525e8f77889b

显然,4次请求,其中3次img请求!(这里使用的是Chrome)

关于图片请求的不同情况不同浏览器下可能都会有不同的结果。具体可参考:https://www.haorooms.com/post/web_http_request

总结图片请求的不同情况,有以下几种:

1. 隐藏图片

display: none —— 只有Opera不产生请求。

visibility: hidden —— 在Opera下也会产生请求。

2. 隐藏元素的背景

Opera和Firefox对于用display: none隐藏的元素背景,不会产生HTTP请求。

3. 重复图片(所加载图片是一样的 )

所有浏览器产生一次请求

4. 重复背景

所有浏览器产生一次请求

5. 页面中不存在的元素的背景

不请求(只用对应元素在html页面中存在时,才会加载图片,先渲染DOM,再渲染CSS 树)

6.多重背景

请求最后一个(样式覆盖)

7. hover的背景加载

触发hover时,才会请求

8. JS里innerHTML中的图片

只有Opera不会马上请求图片。当添加到DOM树上时,Opera才会发送请求。

9. 图片预加载

525e8f77889b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值