SHU BLOG

BLOG NEWS ブログ

  • ARTICLE
    2020.09.29
  • CATEGORY
TITLE

【CSS】animation-timing-functionの使い方・変化を指定する

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!笑

シュウ
シュウ
今回は【CSS】animation-timing-functionの使い方・変化を指定する!
の解説になります!

こんな方に読んでほしい

  • CSSを学び始めた方へ
  • animationプロパティについて学びたい方へ
  • 今回はanimation-timing-functionでアニメーションの変化についての解説になります。

今回は、animationに関する記事になります。
animation-timing-functionとは、アニメーションの変化(速度)のスタイルを指定します。
前回の復習とかねて解説していきます。

animation-timing-functionの使い方について

animation-timing-functionの使い方について

animation-timing-functionプロパティとは、アニメーションの変化(速度)のスタイルを指定します。
「最初はゆっくりで、だんだん速く」、「最初は速く、だんだんゆっくり」などアニメーションに変化(速度)の
指定が可能になります。

書き方は以下のようになります

/*--@keyframes--*/
@keyframes アニメーション名 {
	/*--省略--*/
}
要素 {
	animation-name: アニメーション名;
	animation-duration: 時間(値);
	animation-timing-function: 値;
}
指定できる値
  • animation-timing-function
    今回はここを解説!
    アニメーションの変化(速度)のスタイルを指定します。
  • @keyframes 
    解説の記事ありますよ
    アニメーションの動きとタイミングを指定する際に使います。
  • animation-fill-mode 
    解説の記事ありますよ
    アニメーションの実行前後のスタイルを指定します。
  • animation-play-state 
    解説の記事ありますよ
    アニメーションが再生中か一時停止状態かを指定します。
  • animation-delay 
    解説の記事ありますよ
    アニメーションが開始するまでの時間を指定します。
  • animation-name 
    解説の記事ありますよ
    要素にアニメーション名を指定します。
  • animation-duration 
    解説の記事ありますよ
    アニメーションの1回分の時間を指定します。
  • animation-iteration-count 
    解説の記事ありますよ
    アニメーションの実行回数を指定します。
  • animation-direction 
    解説の記事ありますよ
    アニメーションの再生方向を指定します。

animation-timing-function 指定方法について

今まで「アニメーション」について解説してきました。全てにおいて一定のリズムのみでの動きでしたが、
今回、解説する「timing-function」では、様々な変化をアニメーションに指定できますので、
しっかり理解しておきましょう。

指定できる値
  • ease(初期値)
    開始と終了を滑らかに変化します
  • linear
    直線的(一定速度)に変化します
  • ease-in
    ゆっくり開始します
  • ease-out
    ゆっくり終了します
  • ease-in-out
    ゆっくり開始してゆっくり終了します
  • step-start
    開始から終了状態に一気に変化し、その後は変化しません
  • step-end
    最初は変化せず、最後の段階へ一気に変化します
  • steps(ステップ数,起点キーワード)
    1つ目の値にステップ数、2つ目の値にstart、endのいずれかを指定します
  • cubic-bezier(n,n,n,n)
    三次ベジェ曲線の軌跡によって変化の進行度を指定します。
    下記のサイトで動きの確認ができます、一度ご参考にしてみてください
    Ceaser – CSS Easing Animation Tool – Matthew Lein

今回は、開始の指定を0%の場合は、「width:0」、終了の指定は100%の場合は「width:100%」になっております。
共通部分である、アニメーション名「name: animation-sample」になっております。
アニメーションの1回分の時間は「duration: 3s」3秒になっております。

timing-functionの指定

01.滑らかに変化

ease

02.直線的に変化

linear

03.ゆっくり開始

ease-in

04.ゆっくり終了

ease-out

05.ゆっくり開始してゆっくり終了

ease-in-out

06.開始から終了状態に一気に変化

step-start

07.最初は変化せず、最後の段階へ一気に変化

step-end

<div class="timing-function01 timing-function">ease</div>
<div class="timing-function02 timing-function">linear</div>
<div class="timing-function03 timing-function">ease-in</div>
<div class="timing-function04 timing-function">ease-out</div>
<div class="timing-function05 timing-function">ease-in-out</div>
<div class="timing-function06 timing-function">step-start</div>
<div class="timing-function07 timing-function">step-end</div>
/*--共通 CSS--*/
.timing-function {
	width: 120px;
	height: 20px;
	line-height: 20px;
	color: #333;
	text-indent: 10px;
	background-color: #dee1e6;
}

/*--ease--*/
.timing-function01{
	animation-name: animation-sample; /*--アニメーション名--*/
	animation-duration: 3s; /*--時間--*/
	animation-timing-function: ease; /*--変化--*/
}

/*--linear--*/
.timing-function02{/*--アニメーション名・時間省略--*/
	animation-timing-function: linear; /*--変化--*/
}

/*--ease-in--*/
.timing-function03{/*--アニメーション名・時間省略--*/
	animation-timing-function: ease-in; /*--変化--*/
}

/*--ease-out--*/
.timing-function04{/*--アニメーション名・時間省略--*/
	animation-timing-function: ease-out; /*--変化--*/
}

/*--ease-in-out--*/
.timing-function05{/*--アニメーション名・時間省略--*/
	animation-timing-function: ease-in-out; /*--変化--*/
}

/*--step-start--*/
.timing-function06{/*--アニメーション名・時間省略--*/
	animation-timing-function: step-start; /*--変化--*/
}

/*--step-end--*/
.timing-function07{/*--アニメーション名・時間省略--*/
	animation-timing-function: step-end; /*--変化--*/
}

@keyframes animation-sample {
	0% {
		width: 0;
	}
	100% {
		width: 100%;
	}
}

関連記事

【STEP01 CSS】@keyframesの使い方アニメーションの動きを指定する
@keyframesとは、アニメーションの動きとタイミングを指定する際に使います。
【STEP02 CSS】animation-delayの使い方アニメーションの開始を指定する
animation-delayとは、アニメーションが開始するまでの時間を指定します。
【STEP03 CSS】animation-play-stateの使い方・再生状態を指定する
animation-play-stateとは、アニメーションが再生中か一時停止状態かを指定します。
【STEP04 CSS】animation-fill-modeの使い方・実行前後を指定する
animation-fill-modeとは、アニメーションの実行前後のスタイルを指定します。
【STEP06 CSS】animation-iteration-count・アニメーションの回数を指定する
animation-iteration-countとは、アニメーションの実行回数を指定します。
【STEP07 CSS】animation-directionの使い方・ 再生方向を指定する
animation-directionとは、アニメーションの再生方向を指定します。
【STEP08 CSS】animationプロパティの一括指定!まとめ

まとめ

今回はこれで以上です。
今回紹介したのは、アニメーションの変化のタイミングについて解説しました。
次回は「アニメーションの実行回数」について解説します。

POINT
  • animation-timing-functionとは、アニメーションの変化(速度)のスタイルを指定します。
スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

関連記事

オススメ記事

月別アーカイブ

Portfolio

page_top