clipプロパティの説明
CSSのclip
プロパティは、要素を切り抜いて可視化する範囲を指定します。この機能は、position
で絶対位置を指定された要素に対してのみ有効です。
切り抜く範囲はボックスと同じ大きさになり、top
、right
、bottom
、left
という4つの値によって、ボックスの各辺からの距離を指定します。切り抜かれた部分の外側については、overflowで表示方法を指定します。
clip
の役目は終了しました。新しく作成するページには、より新しいclip-path
を採用して下さい。
clipに指定できる値
auto
- 切り抜きを行いません。自動的にボックスの境界で切り抜く
rect(auto, auto, auto, auto)
とは異なることに注意して下さい。これが初期値です。 <shape>
rect()
で表す短形の値です。top
とbottom
は、ボックスの範囲において上辺からのオフセットを表します。right
とleft
は、ボックスの範囲において左辺からのオフセットを表します。
clearの使い方とサンプルコード
clear
プロパティの構文は以下の通りです。
/* キーワード値 */
clip: auto;
/* <shape>値 */
clip: rect(10px 30px 30px 10px);
clip: rect(3em 6em 10em 1em);
/* グローバル値 */
clip: inherit;
clip: initial;
clip: revert;
clip: unset;
clipの実例
それでは実際にclip
プロパティの書き方を見ていきましょう。以下の例で、300x200pxの画像をclip
でトリミングした場合に、どのように表示されるかを確認します。この効果を期待する要素には、position
で絶対位置の値を指定しなければなりません。
<section class="samp_box">
<div>
<div>元画像です。</div>
<img src="/images/sample_img300x200.png" alt="参考画像">
</div>
<div id="clip">
<div>clip: rect(20px, 200px, 100px, 20px);</div>
<img src="/images/sample_img300x200.png" alt="参考画像">
</div>
</section>
.samp_box {
margin: 1rem 0 0;
padding: 0 1rem 1rem 1rem;
}
.samp_box > div {
position: relative;
margin-top: 1rem;
}
#clip > img {
position: absolute;
top: 1rem;
left: 0;
clip: rect(20px, 200px, 100px, 20px);
}