我有一个场景,其中不同尺寸的图像出现在 50% 页面宽度的列中。
在列宽超过图像的原始宽度的大屏幕上,图像应呈现为其原始宽度,同时仍保持流畅。
图像尺寸各不相同(即横向与纵向),因此不能将单一宽度或高度应用于 img 元素。我可以将父元素限制为与将显示的最大图像宽度相匹配的最大宽度,但是宽度较小的图像一旦变得流畅就会扩展得太宽。
基本结构是:
<div class="column">
<figure>
<img>
</figure>
</div>
使用这个 CSS:
.column {width:50%;}
.column figure {
display:block;
margin:0 auto;
width:100%;
max-width:800px; /* the largest image width */
text-align: center; /* to center images of lesser width */
}
.column img {?}
我可以向 img 元素添加一个指示方向的数据属性,使用它来应用最大宽度,但这需要站点编辑器进行更多工作,我需要避免这样做。因此,我寻求一个纯 CSS 的解决方案......但我被困住了。
有任何想法吗?