【CSS object-fit】サイズの違う写真を比率を変えずに表示するCSS

CSS

こんにちは。

WEBデザイナー兼プロ格闘家のショウイチです。

今日は、画像のサイズ調整に便利なCSSプロパティーobject-fitを紹介していきます。

object-fitは、画像を指定のサイズにフィット・トリミングをすることができる便利なCSSプロパティーです。

object-fitを使えば、わざわざ同じサイズの画像を作らなくても、簡単にトリミングできるので、作業時間もかなり短縮できます。

background-sizeと同じ作用をするイメージですね。

知識ゼロから体系的に学べる!HTMLとCSSの基本。最新の技術に対応!レスポンシブ、Flexbox、CSSグリッド。手を動かしながら学べる!プロの現場で役立つテクニック。コードの知識からデザインのことまで1冊ですべて学べる!

object-fit

それではobject-fitついて説明をしていきます。

例えばこの下の画像を200pxのサイズに切り抜きたいと思ったとき。

女性のイメージ

Photoshopなどでわざわざそのサイズの画像をトリミングするのはめんどくさいですね。

こんな時、object-fitを使えば、簡単にトリミングすることができます。

するとこのような形になります。

See the Pen
XWjLWxe
by syo (@mma111syo)
on CodePen.

たった1行追加するだけで、自動でトリミングしてくれましたね。

object-fit: cover;の場合、元の画像の縦と横の比率を保ちながら、指定した要素内を、全て覆うようにサイズが変形します。縦横の小さいほうを基準に自動でフィットし、その要素からはみ出た部分はトリミングされます。

object-fitのプロパティー

object-fitではcoverの他にも4種類、全部で5種類の値が設定できます。

fill 初期値。縦横の比率を無視して画像を指定した要素内にフィットさせます。比率を無視するので、画像がゆがむことがあります。
cover 画像の縦横の比率を維持し、指定した要素内の全体覆うよう自動でフィットさせます。はみ出る部分はトリミングされます。
contain 縦横比を維持しつつ、指定した要素内からはみ出さないように縦横のうち大きい方のサイズに合わせて自動でフィットさせます。
none 画像のサイズの変更はせずに画像を要素の中央に配置します。
scale-down 要素より画像が大きい場合はcontainになり小さい場合はnoneになります。

コードは以下の通り。

See the Pen
ExgBYqg
by syo (@mma111syo)
on CodePen.

よくある使い方

よくあるのが、ニュースカード/ブログカードを横並びに配置するとき、元の画像の大きさが違う場合このようになります。

See the Pen
eYdwNJX
by syo (@mma111syo)
on CodePen.

これではとても見づらいです。

これにobject-fit: cover;をつけると。

See the Pen
LYRKVxN
by syo (@mma111syo)
on CodePen.

画像の比率を維持したまま、余白が出ることなく指定した大きさにサイズが変更されました。

もし画像をトリミングせずに全体を表示したい場合は、object-fit: contain;をつけます。

See the Pen
mdrZJwM
by syo (@mma111syo)
on CodePen.

すると表示したい画像をトリミングせずに、全体を表示し、指定した要素内に収まります。

もし画像の比率を変えたくない、だけど余白を出したくないという場合は、パーセントで指定するのではなく、px で指定する方法もあります。好みの位置にで全体を覆い、object-positionで画像の位置を任意の場所に指定することもできます。

See the Pen
OJReVQv
by syo (@mma111syo)
on CodePen.

このようにパーセントやpxで指定する方法もあり任意の位置まで調整できます。

object-fitを使えばpositionで位置調整をしたり、overflow: hidden;も使わなくてもいいので、CSS自体もすっきりと整理してあげることができますね。

是非参考にしてください。

それでは本日はここまで、また次回!

書は415点の厳選した良質なWebサイトを集めた見本集です。レイアウト、配色、フォント、素材、プログラムなど、ページを構成しているデザインパーツまで分解して解説しているので、Webサイトを見るだけではわからなかった「デザインの魅力の理由」がわかり、サイトの制作にもすぐに活用できます。「アイデアが見つからない」「イメージはあるけど、何が必要で、どうつくればいいかわからない」といった時に必見の価値あり。パラパラめくって好きなページを見つけ出し、デザイン制作に役立ててください。

NEW POST

  • HEX, CMYK, RGB 変換出力

  • 403エラー|海外からWordPressのアクセスできない時の対処(ロリポップ)

  • スクショでHP全体を撮る方法(Mac)

Search