CSS clip-pathアニメーションで作る動きのあるデザイン集【コピペOK】

clip-pathは要素の表示範囲を切り抜くCSSプロパティですが、アニメーションと組み合わせることで、インパクトのある動きを作ることができます。
この記事では、実務で使えるclip-pathアニメーションを初級〜上級に分けて紹介します。すべてコピペOKです。
目次
初級:シンプルなホバーアニメーション
① 左からスライド表示
<div class="box-wrap">
<div class="box"></div>
</div>.box {
width: 300px;
height: 150px;
background: #3498db;
clip-path: inset(0 100% 0 0);
transition: clip-path 0.5s ease;
}
.box-wrap:hover .box {
clip-path: inset(0 0 0 0);
}右側を100%カットした状態から、ホバーで表示させるシンプルなアニメーションです。
② 円形から表示(丸マスク)
<div class="circle"></div>.circle {
width: 200px;
height: 200px;
background: #e74c3c;
clip-path: circle(10% at 50% 50%);
transition: clip-path 0.5s ease;
}
.circle:hover {
clip-path: circle(75% at 50% 50%);
}中心から広がるような演出が可能です。
中級:デザイン性のある動き
③ 斜めスライドイン
<div class="diagonal-wrap">
<div class="diagonal"></div>
</div>.diagonal {
width: 300px;
height: 150px;
background: #2ecc71;
clip-path: polygon(0 0, 0 0, -40% 100%, 0 100%);
transition: clip-path 0.5s ease;
}
.diagonal-wrap:hover .diagonal {
clip-path: polygon(0 0, 140% 0, 100% 100%, 0 100%);
}斜めのラインを使ったモダンな表示アニメーションです。
④ テキストリビール(下から表示)
<div class="clip-reveal">
<span>Clip-path Animation</span>
</div>.clip-reveal {
display: inline-block;
}
.clip-reveal span {
display: inline-block;
clip-path: inset(100% 0 0 0);
transition: clip-path 0.5s ease;
}
.clip-reveal:hover span {
clip-path: inset(0 0 0 0);
}テキストを下から滑らせて表示するUI。LPなどでよく使われます。
上級:複雑なclip-pathアニメーション
⑤ 波形アニメーション
<div class="wave"></div>@keyframes wave {
0% {
clip-path: polygon(0 50%, 25% 55%, 50% 50%, 75% 45%, 100% 50%, 100% 100%, 0 100%);
}
50% {
clip-path: polygon(0 55%, 25% 50%, 50% 55%, 75% 50%, 100% 55%, 100% 100%, 0 100%);
}
100% {
clip-path: polygon(0 50%, 25% 55%, 50% 50%, 75% 45%, 100% 50%, 100% 100%, 0 100%);
}
}
.wave {
width: 100%;
height: 200px;
background: #9b59b6;
animation: wave 3s infinite ease-in-out;
}背景に動きを出すことで、リッチな印象を演出できます。
⑥ ホバーで分割表示(スライスエフェクト)
<div class="slice"></div>.slice {
width: 300px;
height: 150px;
background: #f1c40f;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
transition: clip-path 0.4s ease;
}
.slice:hover {
clip-path: polygon(0 0, 80% 0, 100% 100%, 20% 100%);
}分割されたような動きで、インパクトのあるUIになります。
まとめ
- clip-pathはアニメーションと組み合わせると強力
- ホバー演出・UI演出に最適
- polygonを使うと自由度が大幅に上がる
カードUIやボタンと組み合わせることで、より実務的なデザインに活用できます。










