【发布时间】:2019-02-13 16:39:58
【问题描述】:
<img> 元素 srcset 属性始终选择较大的 <img> src,即使尺寸媒体查询为 false。
使用<picture> 元素根据浏览器宽度强制选择图像效果很好。我通过this answer 了解到<picture> 和<img> srcset 属性的工作方式不同,<picture> 元素可以根据规则强制执行图像选择,而<img> srcset 则由浏览器自行决定。这可以根据屏幕像素密度、网络速度或浏览器采用的任何其他逻辑。作为回应,我尝试通过禁用 Chrome 浏览器的缓存来强制浏览器选择较小的图像,将浏览器的宽度缩小到远低于 800px 媒体查询(到大约 300px 以考虑我的视网膜显示器的 2 倍像素密度),甚至限制我自己与慢速 3g 网络的连接。尽管如此,Chrome 还是选择了更大的 800 像素图像。
到目前为止,这是我的 <img> 元素...
<img
src="/image-2.jpeg"
srcset="/image-1.jpeg 800w, /image-2.jpeg 600w"
sizes="(min-width: 800px) 800px, 600px"
>
始终将/image-1.jpeg 用作<img> src 属性。
【问题讨论】: