CSSトランジション用カスタムcubic-bezierイージングカーブ

CSS transitionのためのカスタムcubic-bezier()タイミング関数をマスター。制御点の仕組みと、バウンス、エラスティック、スムーズなイージング効果の作成方法を学びます。

Animation Patterns

詳細な説明

cubic-bezierイージングの理解

cubic-bezier()関数は、4つの制御点を使用してCSSトランジションのカスタムイージングカーブを定義できます。アニメーションの加速・減速の仕方を完全にコントロールできます。

構文

transition-timing-function: cubic-bezier(x1, y1, x2, y2);

4つの値はcubic Bezierカーブの2つの制御点を定義します:

  • (x1, y1) — 第1制御点
  • (x2, y2) — 第2制御点
  • x値は0〜1の間でなければならない
  • y値はオーバーシュート/バウンス効果のために0〜1の範囲外にできる

プリセットの等価値

キーワード cubic-bezier
linear cubic-bezier(0, 0, 1, 1)
ease cubic-bezier(0.25, 0.1, 0.25, 1)
ease-in cubic-bezier(0.42, 0, 1, 1)
ease-out cubic-bezier(0, 0, 0.58, 1)
ease-in-out cubic-bezier(0.42, 0, 0.58, 1)

人気のカスタムカーブ

オーバーシュート(バウンス出口):

transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

y2値の1.56により、要素がターゲットを通り越してスナップバックします。

スムーズな減速:

transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);

ページトランジションやモーダル入場に人気のカーブ — 速い開始、非常に穏やかな停止。

スプリング風:

transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);

負のy1が最初に引き戻し、次にオーバーシュートして落ち着く — スプリングをシミュレートします。

ユースケース

カスタムcubic-bezierカーブは、デフォルトのイージングとは異なるブランド独自のアニメーションを作成するために不可欠です。デザインシステム、UIライブラリ、マイクロインタラクションデザインで広く使用されています。

試してみる — CSS Transition Generator

フルツールを開く