CSS3 transition

  • 属性定义及使用说明

transition属性是一个速记属性有四个属性:transition-property, transition-duration, transition-timing-function, and transition-delay。

  • 语法

transition: property duration timing-function delay;

默认值 : all 0 ease 0

transition-property 指定CSS属性的name,transition效果

  指定当元素其中一个属性改变时执行transition效果

  1: none(没有属性改变), 值为none时,transition马上停止执行

  2: all(所有属性改变)这个也是其默认值, 指定为all时,则元素产生任何属性值变化时都将执行transition效果

  3: indent(元素属性名), 指定元素的某一个属性值

transition-duration transition效果需要指定多少秒或毫秒才能完成

  取值:<time>为数值,单位为s(秒)或者ms(毫秒),可以作用于所有元素,包括:before和:after伪元素。

  其默认值是0,也就是变换时是即时的

transition-timing-function 指定transition效果的转速曲线

语法:transition-timing-function : ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier

1、ease:(逐渐变慢)默认值,ease函数等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0).

2、linear:(匀速),linear 函数等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0).

3、ease-in:(加速),ease-in 函数等同于贝塞尔曲线(0.42, 0, 1.0, 1.0).

4、ease-out:(减速),ease-out 函数等同于贝塞尔曲线(0, 0, 0.58, 1.0).

5、ease-in-out:(加速然后减速),ease-in-out 函数等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)

6、cubic-bezier: 特定的cubic-bezier曲线。 (x1, y1, x2, y2)四个值特定于曲线上点P1和点P2。所有值需在[0, 1]区域内,否则无效。

transition-delay 定义transition效果开始的时候

语法:transition-delay : <time> [, <time>]

transition-delay是用来指定一个动画开始执行的时间,也就是说当改变元素属性值后多长时间开始执行transition效果,

其取值:<time>为数值,单位为s(秒)或者ms(毫秒),其使用和transition-duration极其相似,

也可以作用于所有元素,包括:before和:after伪元素。

默认大小是"0",也就是变换立即执行,没有延迟。

  • JavaScript 语法

object.style.transition="width 2s"

  

  • 例子

a {

  -moz-transition: all 0.5s ease-in;

  -webkit-transition: all 0.5s ease-in;

  -o-transition: all 0.5s ease-in;

  transition: all 0.5s ease-in;

}