CSS动画实用技巧

一、transition

定义和用法

transition 属性是一个简写属性,用于设置四个过渡属性,在hover前定义:

transition-property

transition-duration

transition-timing-function

transition-delay

默认值:all 0 ease 0

JavaScript语法:object.style.transition="width 2s"

语法:

transition: property duration timing-function delay;
  • transition-property

描述:规定设置过渡效果的 CSS 属性的名称。

JavaScript语法:object.style.transitionProperty="width,height"

语法:transition-property: none|all|property;

属性值:

  1. none 没有属性会获得过渡效果。

  2. all 所有属性都将获得过渡效果。

  3. property 定义应用过渡效果的 CSS 属性名称列表,列表以逗号分隔。

  • transition-duration

描述:规定完成过渡效果需要花费的时间(以秒或毫秒计)。默认值是 0,意味着不会有效果。

JavaScript语法:object.style.transitionDuration="5s"

语法:transition-duration: time;

注释:请始终设置 transition-duration 属性,否则时长为 0,就不会产生过渡效果。

  • transition-timing-function

描述:规定速度效果的速度曲线。

JavaScript语法:object.style.transitionTimingFunction="linear"

语法:transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);

属性值:

  1. linear 规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1))。

  2. ease 规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。

  3. ease-in 规定以慢速开始的过渡效果(等于 cubic-bezier(0.42,0,1,1))。

  4. ease-out 规定以慢速结束的过渡效果(等于 cubic-bezier(0,0,0.58,1))。

  5. ease-in-out 规定以慢速开始和结束的过渡效果(等于 cubic-bezier(0.42,0,0.58,1))。

  6. cubic-bezier(n,n,n,n) 在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。

  • transition-delay

描述:定义过渡效果何时开始。默认值0

JavaScript语法:object.style.transitionDelay="2s"

语法:transition-delay: time;

属性值:

time    规定在过渡效果开始之前需要等待的时间,以秒或毫秒计。




你可能感兴趣的:(CSS动画实用技巧)