animation プロパティは、@keyframes ルールと組み合わせることで、CSS だけで複雑かつ自律的なアニメーションを実現するためのプロパティです。
@keyframes では 0%(from)〜 100%(to)の間に任意の数のキーフレームを設定でき、各フレームでの CSS スタイルを定義します。animation プロパティは、その「振り付け」を実際の要素に「何秒で」「何回」「どの方向に」再生するかを指示します。
transition との本質的な違いは「自律性」にあります。
・transition → 外部トリガー(hover など)が必要、A→B の1回の変化
・animation → トリガー不要で自発的に動き、ループや逆再生も可能
animation は以下のサブプロパティで構成されます。
・animation-name:@keyframes の名前
・animation-duration:1サイクルの時間(必須)
・animation-timing-function:イージング
・animation-delay:開始遅延
・animation-iteration-count:繰り返し回数(infinite で無限)
・animation-direction:再生方向(normal / reverse / alternate)
・animation-fill-mode:開始前・終了後の状態
・animation-play-state:再生 / 一時停止
ローディングスピナー、パルス演出、ページ入場アニメーションなど、UI の「鼓動」を作り出す最も重要な CSS の仕組みのひとつです。