【CSS】animation-durationプロパティの使用方法を徹底解説!!

こんにちは。

ここ最近割と有名になってきたCSS3のアニメーション。

CSS3のアニメーションを勉強しているとanimation-nameやanimation-duration、animation-delayなど、「animation-」から始まるプロパティが多くて入門者からするとどれがどの用途なのかわかりづらいですよね。

 結局animation-durationってどんな時に使うの?

そんな入門者の方の疑問にお答えするため、今回はanimation-durationプロパティに焦点を絞って、

・animation-durationプロパティの基本的な使い方

について徹底解説します!

animation-durationとは

animation-durationの読み方

animation-durationは「アニメーション デュレーション」と読みます。

durationは日本語で、「持続」や「期限」を意味します。

animation-durationプロパティも意味は読み通りで、アニメーションの持続時間を設定するプロパティになります。

animation-durationはアニメーションの再生時間を設定するプロパティ

animation-durationプロパティの用途を具体的にいうと、

アニメーションの再生時間を設定するプロパティ

です。

CSS3でアニメーションを実装するには、「@keyframes」で指定するキーフレームの他にアニメーションの再生時間を指定する必要があります。

animation-delayやanimation-fill-modeなどのプロパティとは違い、アニメーションを実装する際には必須で指定する必要があるプロパティになります。

animation-durationで利用できる値

では以下の値を使うことができます。

説明
 0  アニメーションを再生しません。(初期値)
 単位つきの数値  3秒の場合は 3s を指定します。
注意
アニメーションを実装する場合は必ず指定する必要があります。

対応ブラウザ

対応ブラウザは以下の通りです。

PC用ブラウザ 対応状況
Chrome 完全対応
Edge 完全対応
Firefox 完全対応
Internet Explorer 完全対応
Opera 完全対応
Safari 完全対応
スマートフォン用ブラウザ 対応状況
Android webview 完全対応
Android版Chrome 完全対応
Android版Firefox 完全対応
Android 版 Opera 完全対応
iOS版Safari 完全対応
Samsung Internet 完全対応
MEMO
少し前までは「-webkit-」などのベンダープレフィックスをつけることが推奨されていましたが、今現在は付けなくても良いとされています。

animation-durationの基本的な使い方

ここでは実際にanimation-durationプロパティを使用した簡単なアニメーションをサンプルコードと一緒に、手順ごとに解説していきます。

アニメーションさせるHTML要素、CSSを用意する

まずはアニメーションさせる元の要素を用意します。

今回は背景色が赤い円を用意します。

See the Pen
transition–1
by ryuga (@ryuga)
on CodePen.

キーフレームを用意する

次に、アニメーションの設計図となるキーフレームを設定します。

今回は円の背景色が赤色から青色に変わるキーフレームを設定します。

fromはアニメーションの開始状態、toはアニメーションの終了状態を示します。

animation-nameを指定する

次に、先ほど設定したキーフレームと .circle を紐付けします。

紐付けするには、.circle にanimation-nameプロパティを指定します。

animation-durationプロパティを設定する

紐付けはできてもこれだけではアニメーションは実行されません。

アニメーションを実行するにはanimation-durationプロパティを使用して、アニメーションの再生時間を設定する必要があります。

See the Pen
animation-duration–1
by ryuga (@ryuga)
on CodePen.

今回は2秒かけて背景色を変化させるというアニメーションを実装するため、animation-durationプロパティに2sと指定しました。

そのため、ブラウザでは赤い円が2秒かけて青色になるのを確認できると思います。

このような手順を踏んで、animation-durationプロパティを設定してアニメーションを実装します。

まとめ

いかがでしょうか?

今回はanimation-durationプロパティの基本的な使い方を解説していきました。

CSS3のアニメーションはJavaScriptよりも軽量であることから、今後もさらに需要の増す技術だと考えられています。

この機会にぜひマスターして自在にCSS3のアニメーションを実装できるようにしましょう!

参考文献:http://www.htmq.com/css3/animation-duration.shtml

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?