【发布时间】:2021-01-10 03:46:14
【问题描述】:
我的网站上有很多各种尺寸的图片。这些图像是响应式的,并且在从桌面到移动的所有浏览器宽度下都会改变大小。我在我的 Google Search Console 中看到我的 CLS(累积布局偏移)很差,只有 0.25 秒。我的网站布局会随着图片的加载而变化。
由于我的图像是响应式的,我无法指定图像的确切尺寸,也无法使用占位符来保留空间。
用响应式图像防止 CLS 的现代方法是什么?
此处布局:https://jsfiddle.net/exspwgab/
更新:我在互联网上尝试了一个建议,即在 img 标签中指定图像文件的宽度和高度,例如:
<img src="photo.jpg" width="1504" height="752">
然后在 CSS 中你这样做:
width: 100%;
height: auto;
这似乎不适用于任何浏览器。加载图像时,我网页上的元素仍然到处移动。
如果有人有适用于所有浏览器的解决方案,请告诉我。我基本上需要占位符来在图像加载时保留空间,以防止页面卡顿问题。
我的响应式布局的 JSFiddle 在这里: https://jsfiddle.net/exspwgab/
【问题讨论】:
-
请在这里找到推荐:web.dev/optimize-cls
-
我尝试在图像标签中应用宽度和高度,然后在 CSS 中设置宽度:100% 和高度:自动,但由于某种原因会破坏 Safari 上的图像。目前我必须将宽度和高度设置为 100% 才不会破坏我的布局。
标签: html css image responsive-design