CSS transition-duration 属性用于指定元素执行过渡动画的持续时间。
transition-duration
属性以秒或毫秒为单位指定过渡动画所需的时间。默认值为 0s ,表示不出现过渡动画。
可以为transition-duration
指定一个或多个值,多个值之间使用逗号来分隔。多个动画过渡持续时间值会和其它过渡动画属性一一对应。例如,如果你提供了2个动画过渡持续时间,那么第一个transition-duration
值决定transition-property
属性的第一个属性的动画过渡持续时间,第二个transition-duration
值决定transition-property
属性的第二个属性的动画过渡持续时间。
如果指定的动画过渡持续时间个数小于过渡动画属性个数,那么持续时间列表会重复。如果持续时间列表大于过渡动画属性个数,那么该列表会被裁减。两种情况下,过渡动画属性列表都保持不变。
官方语法
transition-duration: <time> [, <time>]*
参数:
- <time>:使用<time>类型来设置过渡动画的持续时间。时间为0s表示动画立刻完成,即没有动画发生。时间不允许为负数。
transition-duration
属性的初始值为0s。
应用范围
transition-duration
属性可以应用所有元素,以及:before
和:after
伪元素上。
示例代码
transition-duration: 3s; transition-duration: 2s, 4ms; transition-duration: inherit;
下面的代码指定元素在0.5秒和1秒时间内分别完成移动和颜色变化两个过渡动画。
.element { position: absolute; left: 0; color: black; background-color: white; transition-property: left, color; transition-duration: .5s, 1s; transition-timing-function: ease-in-out, ease-out; } .element:hover { left: 300px; color: white; background-color: black; }
在线演示
下面的例子演示了元素在0.5秒、1秒和2秒时间内分别完成移动和背景颜色变化两个过渡动画。
0.5s
1s
2s
浏览器支持
CSS3 transition-duration
属性的浏览器兼容性列表如下: