ボタンホバートランジションイージング

高速で応答性のあるイージングカーブでボタンホバートランジションを最適化します。最も満足感のあるボタンインタラクションフィードバックを作るcubic-bezier値を学びます。

UI Patterns

詳細な説明

ボタンホバーイージング

ボタンホバーエフェクトはあらゆるWebサイトで最も頻繁なアニメーションの1つです。高速(200ms未満)で応答性がある必要があります。

推奨カーブ

transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);

これはCSSのeaseキーワードです。素早い加速、緩やかな減速。ホバーエフェクトには、この非対称性が即座の視覚的フィードバック(速い開始)とスムーズな終了(遅い終了)を提供するため理想的です。

持続時間ガイドライン

プロパティ 持続時間 理由
背景色 100〜150ms 色の変化は即座に知覚される
ボックスシャドウ/エレベーション 150〜200ms 影の変化はやや長い持続時間が有効
Transform (scale/translate) 150〜200ms 動きは知覚に十分な時間が必要
ボーダー色 100〜150ms 微妙な変化、高速レスポンス

コード例

.btn {
  background: hsl(220, 90%, 56%);
  box-shadow: 0 1px 3px rgba(0,0,0,0.12);
  transform: translateY(0);
  transition:
    background 150ms ease,
    box-shadow 200ms ease,
    transform 200ms ease;
}
.btn:hover {
  background: hsl(220, 90%, 48%);
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  transform: translateY(-1px);
}
.btn:active {
  transform: translateY(0);
  box-shadow: 0 1px 3px rgba(0,0,0,0.12);
  transition-duration: 50ms;
}

Activeステートのテクニック

:activeステートはより短い持続時間(50ms)を使用しています。ユーザーがクリックすると、ボタンはほぼ即座に押された状態に戻り、触覚的な感触を与えます。遅いホバー、速いクリック — この非対称性が満足感のあるインタラクションを作ります。

ユースケース

これらのイージング値をボタン、リンク、インタラクティブカード、ナビゲーションアイテム、応答性のあるホバーフィードバックが有効なクリック可能な要素に適用します。

試してみる — CSS Easing Function Editor

フルツールを開く