CSS アニメーショントリガー
CSS アニメーショントリガーモジュールは、特定のタイムライントリガーが発生したときに、標準的な時間ベースの CSS アニメーションを起動する機能を提供します。
スクロールトリガーアニメーションを使うと、JavaScript を使わずに、トリガーの有効化または無効化に応じて、通常の時間ベースのアニメーションを開始、一時停止、停止するタイミングを制御できます。例えば、スクロールする要素がタイムライン範囲に入ったときや、そこから出たときが該当します。
これらの範囲は通常、ビュー進行タイムラインから取得されます。例えば、要素がスクロールポートに入ったときにアニメーションを開始し、スクロールポートから出たときに一時停止できます。プロパティを使うと、タイムライン範囲を変更し、作動範囲と有効化範囲を制御できます。トリガーには、タイムライン範囲に入るときと出るときで異なるアクションを指定できるため、アニメーションの再生を制御できます。
アニメーショントリガーモジュールはイベントトリガーも定義します。対応している場合、特定の DOM イベントが発生したときに、タイムラインベースのアニメーションを有効化します。
アニメーショントリガーの動作
この例では、スクロールトリガーアニメーションを示します。ボックスを上下にスクロールしてみてください。「バウンサー」というテキストが現れるとボールのアニメーションが起動し、消えると同じアニメーションが逆方向に起動します。さらにスクロールすると、「もう一つのバウンサー」というテキストがスクロールポートに現れてから消えるときにも、同じ動作が繰り返されます。
「バウンサー」要素に timeline-trigger-name と timeline-trigger-source を指定して、アニメーショントリガーを定義しています。ボールには、跳ねる animation を 2 つ設定しています。また、animation-trigger プロパティも設定しています。このプロパティは、両方のトリガー名と、アニメーションの有効化時および無効化時に実行するアクションを参照します。「バウンサー」要素が表示領域に入ったり、そこから出たりすることで、有効化と無効化が行われます。
リファレンス
>プロパティ
animation-triggertimeline-trigger一括指定timeline-trigger-activation-range一括指定timeline-trigger-active-range一括指定timeline-trigger-nametimeline-trigger-sourcetrigger-scope
CSS アニメーショントリガーモジュールでは、event-trigger、event-trigger-name、event-trigger-source プロパティも導入しています。現在、これらの機能に対応しているブラウザーはありません。
データ型と値
ガイド
- CSS スクロールトリガーアニメーションの使用
-
CSS スクロールトリガーアニメーションを実装するための入門ガイドです。
- タイムライン範囲名
-
<timeline-range-name>データ型と、さまざまなタイムライン範囲名について説明します。 - タイムラインのインセットを理解する
-
スクロール駆動アニメーションとスクロールトリガーアニメーションを内側にずらすために使う、アニメーション添付範囲の構文について説明します。
関連する概念
- CSS アニメーションモジュール
- CSS スクロール駆動アニメーションモジュール
仕様書
| 仕様書 |
|---|
| Animation Triggers> |
関連情報
- CSS アニメーションの使用
- スクロール駆動アニメーションの使用
- CSS スクロール駆動アニメーションのタイムライン
- CSS scroll-triggered animations are coming!(英語) - developer.chrome.com (2025)