例
从开始到结束播放动画以相同的速度:
div {
-webkit-animation-timing-function: linear; /* Chrome, Safari,
Opera */
animation-timing-function: linear;
}
试一试» 更多"Try it Yourself"下面的例子。
定义和用法
动画定时功能指定动画的速度曲线。
速度曲线定义动画使用从一组CSS样式更改为另一个时间。
该速度曲线是用来进行变更顺利。
默认值: | ease |
---|---|
遗传: | no |
动画: | no. Read about 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 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;
动画定时函数使用一个数学函数,称为三次贝塞尔曲线,以使速度曲线。 您可以在此函数中使用您自己的值,或使用预先定义的值之一:
属性值
值 | 描述 | 播放 |
---|---|---|
linear | 动画具有从开始以相同的速度来结束 | 播放 ” |
ease | 默认值。 动画有一个缓慢的开始,那时快,它结束前慢慢 | 播放 ” |
ease-in | 动画有一个缓慢的开始 | 播放 ” |
ease-out | 动画有一个缓慢的结束 | 播放 ” |
ease-in-out | 动画既有慢启动和慢结束 | 播放 ” |
step-start | 相当于steps(1, start) | |
step-end | 相当于steps(1, end) | |
steps(int,start|end) | 指定一个步进功能,具有两个参数。 第一个参数指定在函数间隔数。 它必须是一个正整数(greater than 0) 第二个参数,这是可选的,或者是值"start"或"end" ,和指定在发生的时间间隔内的值的变化的点。 如果省略第二个参数,它被赋予值"end" | |
cubic-bezier( n , n , n , n ) | 定义了立方贝塞尔函数自己的价值观 可能的值是从0到1的数值 | |
initial | 将此属性设置为默认值。 阅读关于初始 | |
inherit | 继承其父元素此属性。 阅读关于继承 |
Tip:试着在试一试下面部分不同的价值观。
更多示例
例
为了更好地理解不同的定时功能价值;
这里有五个不同<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;}
试一试» 例
与上述相同的例子,但速度曲线与立方贝塞尔函数定义为:
/* 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);}
试一试» 相关页面
CSS3教程: CSS3动画
HTML DOM参考: animationTimingFunction property