广州总部电话:020-85564311
广州总部电话:020-85564311
20年
互联网应用服务商
请输入搜索关键词
知识库 知识库

优网知识库

探索行业前沿,共享知识宝库

HTML5 图片的三种响应式加载方式

发布日期:2026-03-16 14:17:48 浏览次数: 808 来源:生活梦想者
推荐语
掌握HTML5图片响应式加载的三种实用技巧,让你的网页适配各种设备屏幕!

核心内容:
1. 使用srcset和x语法实现相同尺寸不同分辨率的图片加载
2. 通过picture元素为不同设备场景提供匹配的图像版本
3. 利用srcset和sizes属性实现基于视口宽度的智能图片选择
小优 网站建设顾问
专业来源于二十年的积累,用心让我们做到更好!

分辨率切换: 相同的尺寸, 不同的分辨率

如果你支持多种分辨率显示,但希望每个人在屏幕上看到的图片的实际尺寸是相同的,你可以让浏览器通过srcsetx语法结合。

<img srcset="elva-fairy-320w.jpg,elva-fairy-480w.jpg 1.5x,elva-fairy-640w.jpg 2x"src="elva-fairy-640w.jpg" alt="">

分辨率切换:不同的尺寸

<picture>

HTML<picture> 元素通过包含零或多个 <source> 元素和一个 <img> 元素来为不同的显示/设备场景提供图像版本。浏览器会选择最匹配的子 <source> 元素,如果没有匹配的,就选择 <img> 元素的 src 属性中的URL。然后,所选图像呈现在<img>元素占据的空间中。

<picture><source media="(max-width: 799px)" srcset="elva-480w-close-portrait.jpg"><source media="(min-width: 800px)" srcset="elva-800w.jpg"><img src="elva-800w.jpg" alt=""></picture>

第一个条件返回真,那么就会显示这张图片。

srcset

srcset定义了我们允许浏览器选择的图像集,以及每个图像的大小。

sizes定义了一组媒体条件(例如屏幕宽度)并且指明当某些媒体条件为真时,什么样的图片尺寸是最佳选择我们在之前已经讨论了一些提示。

<img src="128px.jpg"srcset="128px.jpg 128w, 256px.jpg 256w, 512px.jpg 512w"sizes="(max-width: 360px) 340px, 128px">

<img src="128px.jpg"srcset="128px.jpg 128w, 256px.jpg 256w, 512px.jpg 512w"sizes="(max-width: 360px) calc(100vw - 20px), 128px">

<img>元素的宽度规格为128的时候,加载128px.jpg,宽度规格为256的时候,加载256px.jpg, 宽度规格为512的时候,加载512px.jpg

这里的宽度规格就是w描述符的另外一种理解,其与sizes属性设定和屏幕密度密切相关。

假设屏幕密度是2iPhone6手机,sizes属性计算值是128px,则此时<img>实际的宽度规格应该是128*2也就是256w,因此会加载256px.jpg这张图。

sizes属性值(max-width: 360px) 340px, 128px表示当视区宽度不大于360像素时候,图片的宽度限制为340像素;其他情况下,使用128像素。
sizes属性值(max-width: 360px) calc(100vw - 20px), 128px表示当视区宽度不大于360像素时候,图片的宽度限制为屏幕宽度减20像素;其他情况下,使用128像素。

<picture><sourcemedia=”(max-width: 800px)“srcset=”f1-focused-800.jpg 800wf1-focused-1406.jpg 1406wsizes=”(min-width: 530pxcalc(100vw – 96px), 100vw“><img alt=”“src=”f1-689.jpg“srcset=”f1-689.jpg 689wf1-1378.jpg 1378wf1-500.jpg 500wf1-1000.jpg 1000wsizes=”(min-width: 1066px689pxcalc(75vw – 137px)“></picture>

引用SVG

<img src="equilateral.png" alt="triangle with equal sides" srcset="equilateral.svg">

对于不支持SVGIE 8及更低版本,Android 2.3及更低版本)的浏览器,您可以从src属性引用PNGJPG,并使用srcset属性只有最近的浏览器才能识别)来引用SVG

背景图中使用

backgroundurl("fallback.png") no-repeat center;background-imageurl("image.svg");background-size: contain;





点击上面的公众号名片直接关注

如果你觉得文章内容有用,请记得点赞转发收藏

优网科技,优秀企业首选的互联网供应服务商

优网科技秉承"专业团队、品质服务" 的经营理念,诚信务实的服务了近万家客户,成为众多世界500强、集团和上市公司的长期合作伙伴!

优网科技成立于2001年,擅长网站建设、网站与各类业务系统深度整合,致力于提供完善的企业互联网解决方案。优网科技提供PC端网站建设(品牌展示型、官方门户型、营销商务型、电子商务型、信息门户型、微信小程序定制开发、移动端应用(手机站APP开发)、微信定制开发(微信官网、微信商城、企业微信)等一系列互联网应用服务。


我要投稿

姓名

文章链接

提交即表示你已阅读并同意《个人信息保护声明》

专属顾问 专属顾问
扫码咨询您的优网专属顾问!
专属顾问
马上咨询