css3动画(@keyframes和animation的用法)

animation基本用法是:css

animation: name keeping-time animate-function delay times iteration final;

第一个参数:name (animation-name):web

动画的名字,即设定动画过程的名字,CSS3采用“关键帧 keyframes”来定义动画,方式形如:浏览器

@-webkit-keyframes name{ 0%{ opacity: 0; } 100%{ opacity: 1; } }

前缀-webkit-表示webkit内核浏览器(Chrome、Safari和变心的opera),以上代码定义了一个动画,名叫name,效果是使透明度从0变化到1,0%~100%为整个过程,固然也能够定义多段如:0%~20~50%~100%。动画

第二个参数:keeping-time (animation-duration):spa

整个动画的持续时间,必须带上时间单位,s或者ms都可;code

第三个参数:animate-function (animation-timing-function):orm

运动方式(动画方式)的贝赛尔曲线,可取值为:ease、ease-in、ease-out、linear、ease-in-out、cubic-bezier(num1,num2,num3,num4)。token

第四个参数:delay (animation-delay):ci

动画延迟执行的时间,单位也是s或者ms,值得注意的是,即便延迟时间为0,也必须加上时间单位,若是写成直接写成0,在Chrome和Safari(webkit)下是没问题的,可是在FF(gecko)下无效。animation

第五个参数:times (animation-iteration-count):

动画循环执行的次数,无单位,infinite为无限循环。

第六个参数:iteration (animation-direction):

若是动画循环,循环的方式是:alternate(偶数次向前播放,奇数次向后播放)、normal(每次都向前播放)。

第七个参数:final (animation-fill-mode):

动画的最后(达到100%)时的状态,取值有:backward(回到初始状态)、forwards(停在最终状态)、none、both。

  

 

 属性值

效果

none

默认值,表示动画将按预期进行和结束,在动画完成其最后一帧时,动画会反转到初始帧处

forwards

表示动画在结束后继续应用最后的关键帧的位置

backwards

会在向元素应用动画样式时迅速应用动画的初始帧

both

元素动画同时具备forwards和backwards效果

每一个参数也能够单独写,最后用的时候记得加浏览器前缀:

.classname{ -webkit-animation:name 6s linear 0ms infinite normal forwards; -moz-animation:name 6s linear 0ms infinite normal forwards; -o-animation:name 6s linear 0ms infinite normal forwards; animation:name 6s linear 0ms infinite normal forwards; }
相关文章
相关标签/搜索