CSS3 动画

CSS3,我们可以创建动画,它可以取代许多网页动画图像,Flash动画,和JAVAScripts

CSS3 @keyframes 规则

要创建CSS3动画,需要了解@keyframes规则。

@keyframes规则是创建动画,@keyframes规则内指定一个CSS样式和动画将逐步从目前的样式更改为新的样式

浏览器支持:


属性
                                                              浏览器支持
@keyframes

        

            

   需要前缀 -webkit-

     

        

  需要前缀 -webkit-

       
animation

        

             

    需要前缀 -webkit-

     

        

  需要前缀 -webkit-

       


CSS3 动画

当在 @keyframes 创建动画,把它绑定到一个选择器,否则动画不会有任何效果。

指定至少两个CSS3的动画属性绑定向一个选择器

  • 规定动画的名称

  • 规定动画的时长

实例:设置动画名称为demo,动画时间为5s

div
{	
width:100px;
height: 100px;
position: relative;
background-color: pink;
animation: demo 5s;
-moz-animation: demo 5s;	/* Firefox */
-webkit-animation: demo 5s;	/* Safari 和 Chrome */
-o-animation: demo 5s;	/* Opera */
}
@keyframes demo
{
from {left:0px;}
to {left:300px;}
}
/* Firefox */
@-moz-keyframes demo
{
from {left:0px;}
to {left:300px;}
}
/* Safari and Chrome */
@-webkit-keyframes demo
{
from {left:0px;}
to {left:300px;}
}
/* Opera */
@-o-keyframes demo
{
from {left:0px;}
to {left:300px;}
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

效果图:

GIF.gif

注意: 必须定义动画的名称和动画的持续时间。如果省略的持续时间,动画将无法运行,因为默认值是0

什么是CSS3动画:

动画是使元素从一种样式逐渐变化为另一种样式的效果,可以改变任意多的样式任意多的次数。

为了得到更好的浏览器支持,可以使用百分比来规定变化发生的时间

0% 是动画的开始,100% 是动画的完成。

实例

div
{	
width:100px;
height: 100px;
position: relative;
background-color: pink;
animation: demo 5s;
-moz-animation: demo 5s;	/* Firefox */
-webkit-animation: demo 5s;	/* Safari 和 Chrome */
-o-animation: demo 5s;	/* Opera */
}
/* Safari and Chrome */
@-webkit-keyframes demo
{
0%{left:0px;top:0;}
50% {left:300px;top:0;}
75%{left:300px;top:100px;}
100%{left:0;top:100px;}
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

效果图:

GIF.gif


动画属性:


属性描述CSS版本
@keyframes规定动画。3
animation所有动画属性的简写属性,除了 animation-play-state 属性。3
animation-name规定 @keyframes 动画的名称。3
animation-duration规定动画完成一个周期所花费的秒或毫秒。默认是 0。3
animation-timing-function规定动画的速度曲线。默认是 "ease"。3
animation-fill-mode规定当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式。3
animation-delay规定动画何时开始。默认是 0。3
animation-iteration-count规定动画被播放的次数。默认是 1。3
animation-direction规定动画是否在下一周期逆向地播放。默认是 "normal"。3
animation-play-state规定动画是否正在运行或暂停。默认是 "running"。3