画像の切り抜きに役立つ「clip」を初心者向けに解説

今回は、画像を切り抜く範囲を設定するプロパティ「clip」のお話をします。

ホームページなどで「画像のこの部分を切り抜いて表示したい!」ということ、ありますよね。

そんなとき、

わざわざ画像を編集するのは手間・・・

というお悩みが出てきてしまうのではないでしょうか。

今回は、画像編集の手間無しで切り抜いて表示することができる「clip」の

・基本的な使い方
・デザインに合わせて切り抜く方法

について説明します。

clipとは

clipの読み方

「clip」は「クリップ」と読みます。日本語に訳すと「切って抜き出す」という意味があります。画像などを切り抜くという意味で、「クリッピングする」と言われることもあります。

clipの説明

clipとは、画像などの要素の切り抜き領域を指定するプロパティです。img要素に適用すると、切り抜いて表示することができます。「position:absolute; 」または 「position:fixed;」 によって絶対位置を指定されている要素に適用されます。

clipで利用できる値

clipでは以下の値を使うことができます。

説明
rect 要素のtop,right,bottom,leftの切り抜き領域を指定します。
auto 要素は切り抜きされません。

対応ブラウザ

対応ブラウザは以下の通りです。

PC用ブラウザ 対応状況
Chrome 完全対応
Edge 完全対応
Firefox 完全対応
Internet Explorer 完全対応
Opera 完全対応
Safari 完全対応
スマートフォン用ブラウザ 対応状況
Android webview  完全対応
Android版Chrome  完全対応
Android版Firefox  完全対応
Android 版 Opera  完全対応
iOS版Safari  完全対応
Samsung Internet  完全対応

clipの基本的な使い方

切り抜き領域を指定する方法

以下のHTMLを記述して画像を表示させます。

positionプロパティで画像の配置位置を指定します。親要素のdivにposition:relative;を適用して相対位置を指定し、子要素のimgにposition:absoluteを適用して親要素を基準に絶対位置を指定します。

次に、clipプロパティで切り抜き領域を指定します。clip:rect;(<top>,<right>,<bottom>,<left>)の順に適用されます。 (  ) 内に、4つの値を順に指定します。

図のように、指定した領域で切り抜かれた画像が表示されます。指定した領域は次のように適用されます。

top 画像の上辺からの距離を指定し、その領域が切り抜かれる。
right 画像の左辺からの距離を指定し、その領域から右辺までの距離が切り抜かれる。
bottom 画像の上辺からの距離を指定し、その領域から下辺までの距離が切り抜かれる。
left 画像の左辺からの距離を指定し、その領域が切り抜かれる。

元の画像はデータ上に存在しているので、切り抜き領域を大きくしたり小さくしたりして調整することが可能です。

また、切り抜かない部分をautoで指定をすることもできます。例えばtopとbottomを切り抜かない指定にする場合は、それぞれの値をautoに指定します。

clip:rect(auto,400px,auto,100px);を指定した結果を見てみましょう。

このように、topとbottomは切り抜きされず、rightとleftのみが切り抜かれて表示されます。

clip-pathプロパティとの違い

clipプロパティは、画像を四角に切り抜く領域を指定することができます。clip-pathプロパティは、切り抜く形とその大きさを指定することができます。

四角の形以外にも、ひし形や円、星の形など指定した形に切り抜くことができます。

デザインに合わせて切り抜こう

長方形の画像を正方形に切り抜く

clipで切り抜き領域を指定して、長方形の画像を正方形に切り抜く方法を紹介します。

こちらの画像の上辺と下辺の長さに合わせてtopとbottomを切り抜き、正方形にします。

次のようにCSSを記述し、clipで切り抜き領域を指定します。topを上辺から100px、bottomを上辺から400pxの領域で切り取るため、clip:rect(100px,300px,400px,0px);を指定します。切り抜かないrightとleftはautoに指定しても同じように切り抜くことができます。

 

topとbottomが指定した領域で切り取られ、切り抜きのサイズが300px×300pxの正方形にすることができました。

人や動物の顔をアップで切り抜く

次は先ほどの画像を、犬の顔の部分をアップで切り抜きます。顔の周りを切り抜くように調整しながら、clip:rectで切り抜き領域を指定します。

このように、顔の部分をアップで切り抜くことができました。

まとめ

いかがでしたか?clipプロパティを使うと、簡単に画像を切り抜く範囲を設定することができます。画像を編集する手間が省けるので、活用してみてください。

この記事がお役に立てれば幸いです。

参考文献:https://developer.mozilla.org/ja/docs/Web/CSS/clip

https://developer.mozilla.org/ja/docs/Web/CSS/clip-path

 

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?