【发布时间】:2020-08-04 21:16:51
【问题描述】:
我正在使用CSS3 Multiple Columns 属性来实现类似Pinterest 的布局(由Bootstrap Cards Columns 实现)。首次加载图像时,每个图像卡都会闪烁,因为浏览器正在尝试计算/重新排列列中的每个图像,如下所示:
我想实现类似 Pinterest 的体验,就像在下载图像之前,卡片以正确的大小设置在正确的位置,并等待图像填充。是否有可能以某种方式提示/在 html/css 中预设图像大小或比例? (这些图像的实际尺寸大于显示尺寸,我尝试将 HTML 中的宽度/高度属性设置为实际尺寸,但效果不佳。)
当前的 HTML 是这样的:
<div class="card-columns">
<div class="card">
<img class="card-img-top" src="https://i.stack.imgur.com/78vXO.gif" loading="lazy">
</div>
... more card elements
</div>
.card-column 样式如下:
.card-columns {
-webkit-column-count: 3;
-moz-column-count: 3;
column-count: 3;
-webkit-column-gap: 1.25rem;
-moz-column-gap: 1.25rem;
column-gap: 1.25rem;
orphans: 1;
widows: 1;
}
【问题讨论】: