【发布时间】:2017-04-12 06:06:27
【问题描述】:
我正在尝试优化一个页面,该页面由一个带有断点的图像网格组成,使其使用 1、2、3 或 4 列。
html 看起来像这样:
<img
srcset="
image-300x200.jpg 300w,
image-original.jpg 600w"
sizes="
(min-width: 1px) calc( 100vw * (0.94 * 1.000) * 1.00 ),
(min-width: 480px) calc( 100vw * (0.94 * 0.905) * 0.50 ),
(min-width: 768px) calc( 100vw * (0.94 * 0.850) * 0.33 ),
(min-width: 981px) calc( 100vw * (0.94 * 0.835) * 0.25 ),
280px"
alt="E-Books customer service for Dutch Libraries"
width="400" height="284">
calc() 函数可能看起来有点复杂,但我已经用不同的视口宽度测试了它们,然后在浏览器中验证了图像的大小并进行了数学检查。
为了完整起见,它的作用如下:
[viewport width] - [94% container width] - [column gutters] / [nr of columns]
但无论我尝试什么,即使屏幕上的 img 大小远低于 300 像素,Chrome(几乎是为了保持一致性)总是选择大图像。正如this answer 中指出的那样,我在开发人员工具 > 检查器 > 属性 > img > currentsrc 中检查了这一点
谁能帮帮我?
【问题讨论】:
-
此代码本身不足以复制问题。你能提供一个minimal reproducible example 来说明这个问题吗?
-
当然,我一有电脑就更新帖子
-
嘿。构建示例代码让我走上了寻找答案的道路。贴在下面。感谢您的提问:D