Bootstrapグリッドシステムを使用して、各行に3つの画像を含む3行の画像ギャラリーを作成しています。すべての画像のサイズが異なります。 CSSでmax-heightまたはmax-widthを使用しようとしましたが、すべての画像(サムネイル)を同じサイズにするのに役立ちませんでした。解決?
body {
padding-top: 70px;}
.row .flex {
display: inline-flex;
width: 100%;}
img {
width:100%;
min-height:100px;}
<link href="https://cdnjs.cloudflare.com/ajax/libs/Twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<div class="row match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/eKTUtA74uN0" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/x-tbVqkfQCU" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/cjpGSEkXfwM" alt="">
</div>
</div>
<div class="row match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/63JKK67yGUE" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/YP6lDrlxWYQ" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/NqE8Ral8eCE" alt="">
</div>
</div>
<div class="row flex match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/6oUsyeYXgTg" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/WF2lvywxdMM" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/2FdIvx7sy3U" alt="">
</div>
</div>
</div>
</div>
あなたが探しているプロパティは object-fit
だと思います
img {
width: 200px; /* You can set the dimensions to whatever you want */
height: 200px;
object-fit: cover;
}
object-fit
プロパティは、背景画像でbackground-size: cover
を使用して、拡大せずにページを埋めるようにする方法と同様に機能します。このように、すべての画像が従うルールで幅を定義して、画像を歪めることなく同じサイズにすることができます。
このプロパティで使用できるその他の値は次のとおりです。
fill
-画像を引き伸ばします。contain
-画像のアスペクト比を保持します。cover
-ボックスの高さと幅を埋めます。none
-元のサイズを保持します。scale-down
-noneとcontainsの違いを比較して、最小のオブジェクトサイズを見つけます。すべての画像にimg-responsiveのcssクラスを追加します。
これを変更するだけです:
img {
width: 100px; // how much you want
min-height: 100px;
float: left;
margin: 10px;
}