エフェクト
clip-path
clip-path は、要素を図形の形に切り抜きます。円・楕円・四角・多角形などの外側は見えなくなります。
構文none | <clip-source> | [ <basic-shape> || <geometry-box> ] …
none | <clip-source> | [ <basic-shape> || <geometry-box> ]
<basic-shape> = inset() | circle() | ellipse() | polygon()
| path() | rect() | xywh() | shape()プレビュー
プリセット
右下の角をドラッグするとサイズを変えられます
コード
.box {
background: linear-gradient(
135deg,
#88d1c7,
#77a7d7,
#eaac3a
);
clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
}コントロール
<basic-shape>polygon()
polygon()
番号の付いた点をドラッグして形を変えられます
点 1
横の位置
縦の位置
点 2
横の位置
縦の位置
点 3
横の位置
縦の位置
解説
基本の図形
inset()は、上・右・下・左から内側に入った四角です。roundのあとにborder-radiusと同じ書き方で角の丸みを付けられます。circle()は半径と中心(atのあと)で決まる円です。半径を省略するとclosest-side(中心からいちばん近い辺まで)になります。ellipse()は横と縦の半径で決まる楕円です。polygon()は頂点の座標を「横 縦」の組にしてカンマで並べます。%は要素の幅・高さに対する割合です。このページでは、番号の付いた点をドラッグして形を変えられます。
切り抜いても箱の大きさは変わらない
切り取られた部分は見えなくなり、クリックにも反応しなくなりますが、レイアウト上の大きさはそのままです。周りの要素は動きません。プレビューでは、元の箱の位置を点線の枠で示しています。外側に付けた box-shadow や outline も一緒に切り取られます。
気をつけること
circle()の半径の%は、幅と高さから求めた対角線の長さを √2 で割った値に対する割合です。このページのコントロールでは長さとキーワードだけを扱います。- 図形のあとに
margin-boxやcontent-boxなどを書くと、どの箱を基準に座標を測るかを変えられます。初期値はborder-boxです。 - 同じ種類の図形どうしなら
transitionでなめらかに変化します。polygon()は頂点の数がそろっている必要があります。