CSS3 transition-timing-function プロパティ

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

開始から終了まで同じ速度でのトランジション効果:

div {
    -webkit-transition-timing-function: linear; /* Safari and Chrome */
    transition-timing-function: linear;
}
Try it Yourself ❯

定義と用法

transition-timing-function プロパティは、トランジション効果の速度曲線を指定します。

このプロパティは、変化が行われている時間内に、トランジション効果の速度を変更することができます。

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

ブラウザ・サポート

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

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

プロパティ
transition-timing-function 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-

CSS 構文

transition-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;

プロパティの値

説明
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 steps(1, start) に同じ
step-end steps(1, end) に同じ
steps(int,start|end) 2 つのパラメータを持つ steps 関数を指定します。最初のパラメータは、何段階で変化するかを「1」以上の正の整数で指定します。 2 番目のパラメータはオプションで、"start" または "end" のいずれかを指定します。 start を指定すると始点(開始時)に最初のステップが発生し、end を指定すると終点(完了時)に最後のステップが発生します。 2 番目のパラメータが省略された場合、"end" を指定したものとみなされます
cubic-bezier(n,n,n,n) 3 次ベジェ曲線に独自の値を定義します。指定できる値は、0 ~ 1 までの数値です
initial プロパティにデフォルト値を設定します。initial を参照
inherit このプロパティは親要素を継承します。inherit を参照

チップ: Try the different values in the examples below to understand how it works!


Examples

その他の例

より深くいろいろな関数値を理解するために: ここに、5 つの異る値を持つ、5 つの <div> 要素があります:

/* For Safari 3.1 to 6.0 */
#div1 {-webkit-transition-timing-function: linear;}
#div2 {-webkit-transition-timing-function: ease;}
#div3 {-webkit-transition-timing-function: ease-in;}
#div4 {-webkit-transition-timing-function: ease-out;}
#div5 {-webkit-transition-timing-function: ease-in-out;}

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

上の例と同じですが、速度曲線は、3 次ベジェ曲線を指定しています:

/* For Safari 3.1 to 6.0 */
#div1 {-webkit-transition-timing-function: cubic-bezier(0,0,1,1;}
#div2 {-webkit-transition-timing-function: cubic-bezier(0.25,0.1,0.25,1);}
#div3 {-webkit-transition-timing-function: cubic-bezier(0.42,0,1,1);}
#div4 {-webkit-transition-timing-function: cubic-bezier(0,0,0.58,1);}
#div5 {-webkit-transition-timing-function: cubic-bezier(0.42,0,0.58,1);}

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

関連ページ

CSS チュートリアル: CSS3 Transitions

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


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