CSS キーフレームによるアニメーション - CSS

CSS キーフレームによるアニメーションのコードを紹介します。

書式

以下の書式を利用します。
animation: (キーフレーム名) (アニメーション時間) (イージング) ();
animation: (キーフレーム名) (アニメーション時間) (イージングの種類) (アニメーション開始時間) (アニメーション回数) (アニメーションの方向)

キーフレームの書式

以下の書式が利用できます。
@keyframes (キーフレーム名) {
  from {
    /* 最初のフレームのスタイルを記述 */
  }
  to {
    /* 最後のフレームのスタイルを記述 */
  }
}
@keyframes (キーフレーム名) {
  0% {
    /* 最初のフレームのスタイルを記述 */
  }
  
  n% {
    /* n%のフレームのスタイルを記述 */
  }

  100% {
    /* 最後のフレームのスタイルを記述 */
  }
}

アニメーション時間、アニメーション開始時間の書式

アニメーションの時間は s ms で指定します。小数も利用できます。
(時間数値)s
(時間数値)ms

イージングの種類

イージングには以下の種類があります。
動作
easeアニメーション開始時にはゆっくり始まり、その後速度が上がり、その後速度を落としながらアニメーションします。
linearアニメーション開始から、終了まで一定の速度でアニメーションします。
ease-inゆっくり始まり、徐々に加速してアニメーションします。
ease-out速い速度で始まり、徐々に減速してアニメーションします。
rase-in-outアニメーション開始時にはゆっくり始まり、徐々に加速して、アニメーション終了手前で減速してアニメーションします。
cubic-bezier(数値, 数値, 数値, 数値)3次ベジェ曲線のP1とP2を (x1, y1, x2, y2) で指定した曲線でアニメーションします。

イージングの種類と動作の詳細はこちらの記事を参照して下さい。

アニメーション回数

アニメーションの回数は数値または、unlimitを指定できます。
動作
(数値)数値で指定した回数再生します
infinite無限に再生を繰り返します

アニメーションの方向

アニメーションの方向は以下を設定できます。
動作
normal純方向に再生します
reverse逆方向に再生します
alternate純方向に再生した後、逆方向に再生します
alternate-reverse逆方向に再生した後、純方向に再生します

実装例

フェードイン アニメーション

非表示の要素をアニメーション表示する - 要素をフェードイン表示するを参照して下さい。

フェードアウト アニメーション

要素をフェードアウトするを参照して下さい。

移動

translate コマンドを利用した要素の移動アニメーションを参照してください。

回転

rotate コマンドを利用した要素の回転アニメーションを参照してください。

補足

キーフレームの指定は animation-name プロパティで設定できます。
アニメーションの時間は animation-duration プロパティで設定できます。
イージングの種類は animation-timing-function プロパティで設定できます。
アニメーションの開始時間は animation-delay プロパティで設定できます。
アニメーションの再生回数は animation-iteration-count プロパティで設定できます。
アニメーションの方向はanimation-direction プロパティで設定できます。

著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。
掲載日: 2020-03-22
iPentec all rights reserverd.