CSS3 animation-timing-function プロパティ

❮ 前章へ 完全な CSS リファレンス 次へ ❯

アニメーションを最初から最後まで同じ速度で再生します:

div {
    -webkit-animation-timing-function: linear; /* Chrome, Safari, Opera */
    animation-timing-function: linear;
}
Try it Yourself ❯

他の "Try it Yourself" 例が下にあります。


定義と用法

animation-timing-function プロパティは、アニメーションの速度曲線を指定します。

速度曲線は、或る CSS スタイルのセットから他に変更するために使用するアニメーションの時間を定義します。

速度曲線は、変化を滑らかにするために使用します。

デフォルト値: ease
継承: 継承する
アニメーション可否: 不可。animatable を参照
バージョン: CSS3
JavaScript 構文: object.style.animationTimingFunction="linear" Try it

ブラウザ・サポート

表中の数字は、完全にプロパティをサポートした最初のブラウザのバージョンです。

-webkit-、-moz-、-o- の後に続く数字は、接頭辞付きで動作した最初のバージョンです。

プロパティ
animation-timing-function 43.0
4.0 -webkit-
10.0 16.0
5.0 -moz-
9.0
4.0 -webkit-
30.0
15.0 -webkit-
12.0 -o-

CSS 構文

animation-timing-function: linear|ease|ease-in|ease-out|ease-in-out|step-start|step-end|steps(int,start|end)|cubic-bezier(n,n,n,n)|initial|inherit;

animation-timing-function は、速度曲線を作成するために、3 次ベジエ曲線と呼ばれる数学関数を使用しています。 この関数には、独自の値を使用するか、または定義済み値のいずれかを使用できます:

プロパティの値

slowly
説明 Play it
linear アニメーションは最初から最後まで同じ速度です Play it ❯
ease デフォルト値。アニメーションは、ゆっくり始まり、次に速く、終了前にはゆっくりになります Play it ❯
ease-in アニメーションはゆっくり始まります Play it ❯
ease-out アニメーションはゆっくり終ります Play it ❯
ease-in-out アニメーションは、ゆっくり始まり、ゆっくり終ります Play it ❯
step-start steps(1, start) に同じ
step-end steps(1, end) に同じ
steps(int,start|end) 2 つのパラメータを持つステップ関数を指定します。最初のパラメータは、関数のインターバルの数を指定します。 これは、正の整数でなければなりません(0 より大きい)。 オプションである 2 番目のパラメータは、 値が "start" か "end" かのいずれかで、インターバル内で値の変化が発生するポイントを指定します。2 番目のパラメータが省略された場合、"end" が 設定されます
cubic-bezier(n,n,n,n) 3 次ベジエ関数に独自の値を定義します
可能な値は 0 ~1 の数値です
initial プロパティにデフォルト値を設定します。initial を参照
inherit このプロパティは親要素を継承します。inherit を参照

チップ: 下の Try it Yourself で、いろいろな値を試してみてください。


Examples

その他の例


各種タイミング関数の値をよりよく理解するために:
ここに、5 つの異なる値を持つ 5 種類の <div> 要素があります:

/* For Chrome, Safari and Opera */
#div1 {-webkit-animation-timing-function: linear;}
#div2 {-webkit-animation-timing-function: ease;}
#div3 {-webkit-animation-timing-function: ease-in;}
#div4 {-webkit-animation-timing-function: ease-out;}
#div5 {-webkit-animation-timing-function: ease-in-out;}

/* Standard syntax */
#div1 {animation-timing-function: linear;}
#div2 {animation-timing-function: ease;}
#div3 {animation-timing-function: ease-in;}
#div4 {animation-timing-function: ease-out;}
#div5 {animation-timing-function: ease-in-out;}
Try it Yourself ❯

上の例と同じですが、速度曲線は 3 次ベジエ関数で定義されています:

/* For Chrome, Safari and Opera */
#div1 {-webkit-animation-timing-function: cubic-bezier(0,0,1,1);}
#div2 {-webkit-animation-timing-function: cubic-bezier(0.25,0.1,0.25,1);}
#div3 {-webkit-animation-timing-function: cubic-bezier(0.42,0,1,1);}
#div4 {-webkit-animation-timing-function: cubic-bezier(0,0,0.58,1);}
#div5 {-webkit-animation-timing-function: cubic-bezier(0.42,0,0.58,1);}

/* Standard syntax */
#div1 {animation-timing-function: cubic-bezier(0,0,1,1);}
#div2 {animation-timing-function: cubic-bezier(0.25,0.1,0.25,1);}
#div3 {animation-timing-function: cubic-bezier(0.42,0,1,1);}
#div4 {animation-timing-function: cubic-bezier(0,0,0.58,1);}
#div5 {animation-timing-function: cubic-bezier(0.42,0,0.58,1);}
Try it Yourself ❯

関連ページ

CSS3 チュートリアル:CSS3 Animations

HTML DOM リファレンス:animationTimingFunction プロパティ


❮ 前章へ 完全な CSS リファレンス 次へ ❯