CSS animation-timing-function 属性
下面有更多“试试看”示例。
定义和用法
The animation-timing-function
指定动画的速度曲线。
速度曲线定义了动画从一组 CSS 样式更改为另一组 CSS 样式所用的时间。
速度曲线用于使更改平滑。
默认值 | ease |
---|---|
继承 | 否 |
可动画 | 否。 阅读有关可动画 |
版本 | CSS3 |
JavaScript 语法 | object.style.animationTimingFunction="linear" 试试看 |
浏览器支持
表中的数字指定完全支持该属性的第一个浏览器版本。
属性 | |||||
---|---|---|---|---|---|
animation-timing-function | 43 | 10 | 16 | 9 | 30 |
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 使用一个称为三次贝塞尔曲线 (Cubic Bezier curve) 的数学函数来创建速度曲线。您可以在此函数中使用自己的值,也可以使用预定义的值之一。
属性值
值 | 描述 | 演示 |
---|---|---|
linear | 动画从开始到结束的速度相同 | 播放 » |
ease | 默认值。动画开始缓慢,然后变快,然后慢慢结束 | 播放 » |
ease-in | 动画开始缓慢 | 播放 » |
ease-out | 动画结束缓慢 | 播放 » |
ease-in-out | 动画开始和结束都很缓慢 | 播放 » |
step-start | 等同于 steps(1, start) | |
step-end | 等同于 steps(1, end) | |
steps(int,start|end) | 指定一个步进函数,有两个参数。第一个参数指定函数中的间隔数。它必须是一个正整数(大于 0)。第二个参数是可选的,可以是“start”或“end”值,指定值在间隔内发生变化的点。如果省略第二个参数,则它将被赋予“end”值。 | |
cubic-bezier(n,n,n,n) | 在三次贝塞尔函数中定义您自己的值 可能的值是 0 到 1 之间的数字值 |
|
initial | 将此属性设置为其默认值。 阅读有关initial | |
inherit | 从其父元素继承此属性。 阅读有关inherit |
提示: 在下面的“更多示例”部分中尝试不同的值。
更多示例
示例
为了更好地理解不同的时间函数值;
这里有五个具有五个不同值的 <div> 元素
#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;}
试试看 »
示例
与上面的示例相同,但速度曲线是用三次贝塞尔函数定义的
#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);}
试试看 »
相关页面
CSS 教程: CSS 动画
HTML DOM 参考: animationTimingFunction 属性