CSS

アニメーションの速度のパターンを設定する

animation-timing-functionプロパティを使うと、アニメーションを実行する速度のパターンを指定できます。animation-timing-functionプロパティは、アニメーション全体ではなく、キーフレームごとに適用されます。なので@keyframes内の個々のキーフレーム内で指定されたanimation-timing-functionプロパティはそのキーフレームに対して適用されます。個々のキーフレームでanimation-timing-functionプロパティが指定されていない時は、アニメーション全体に対して指定されたanimation-timing-functionがそれぞれのキーフレームに適用されます。

animation-timing-functionプロパティ
設定値 説明
ease cubic-bezier(0.25,0.1,0.25,1)を指定したときと同じ
linear cubic-bezier(0,0,1,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)を指定したときと同じ
step-start step(1,start)を指定したときと同じ
step-end step(1,end)を指定したときと同じ

steps(ステップ数,startまたは、end)

step関数では、指定した回数で、アニメーションを等間隔に分割して実行されるようにします。

第1引数:何段階(ステップ)で変化するかを1以上の整数で指定
第2引数:「start」か「end」を指定

「start」を指定すると始点(開始時)に最初のステップ(変化)が起こり。
「end」をシチエすると終点(完了時)に最後のステップ(変化)が起きます。
第2引数を指定すると、「end」が指定されたとみなします。

cubic-bezie

3次ベジエ曲線でググッて下さい。
説明すると非常に長い・・・・

アニメーションを遅れて開始させる

animation-delayプロパティを利用すると、変化を遅れて発生させることができます。

値の指定方法 animation-delay:時間; と書きます。

プロパティの値が変更されてから変化が始まるまでの待機時間を、秒(s)かミリ秒(ms)で指定します。負の値を指定すると、指定した時間分変化した場合のポイントからすぐ開始されます。「-5s」と書いたら、開始から5秒後のところから始まります。
複数のアニメーションを待機時間を変えて適用するときは、それぞれに対応する時間を
「,」カンマで区切って書きます。

トランジションプロパティを一括設定

トランジションのプロパティを一括指定するには、animationプロパティを利用します。それぞれの値を任意の順番で、半角スペースで区切って指定します。

注意点があって、animation-durationプロパティ、animation-delayプロパティの値については、1つ目に指定されている値がanimation-durationプロパティの値、2つめに指定されている値がanimation-delayの値とみなされます。省略した値については初期値が適用されます。

animation:width 3s 1s ease; とかけば、
animation-duration:3s,animation-delay:1sという意味になります。

アニメーション実行する回数を指定する

トランジションとは違い、アニメーションは繰り返して実行することができます。繰り返しは、animation-iteration-countプロパティで指定します。初期値は「1」です。
1回実行して終了します。複数アニメーションを実行回数をかえて適用する場合は、それぞれに対応する回数を「,」カンマで区切って書きます。

サンプルコードの実行結果はこちら

-CSS
-, ,