ページ幅が 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 要素に追加し、これを使用して max-width を適用することはできますが、これにはサイト エディターの作業が増えるため、回避する必要があります。したがって、私は CSS のみの解決策を探していますが、行き詰まっています。
何か案は?