CSS3 animation-name属性及小球弹跳动画实例

亮术网 2017-05-29 本网原创

  CSS3中的制作动画属性animation 总共有8个取值,第一个就是动画名称animation-name,它主要用于定义动画的关键帧,控制动画的运动。CSS3 中动画的关键帧是通过百分比来控制的,不像 flash 在多少帧插入一个关键帧。

  animation-name属性比较简单,就是给动画取一个名字。它可以定义多个值,也就是动画可以取多个名字,每个名字用来定义一个关键帧,以制作多种动画效果。下面先看animation-name的语法规则,再看定义了多个名称的小球弹跳动画实例。

 

  一、animation-name语法规则

  animation-name:<single-animation-name>[, <single-animation-name> * ]

  <single-animation-name> = none | <identifier>

 

  二、语法说明

  1、animation-name 可以设置多个动画名称,默认值为none

  A、<single-animation-name> 表示第一个动画名称,不能省略;

  B、[]中的 <single-animation-name> 表示第二个动画名称,可以省略;

  C、* 表示第三个、第四个、……第n个动画名称,可以省略;

 

  2、<single-animation-name> 取值如下:

  none:不定义动画名称;

  <identifier>:定义一个动画名称。

 

  三、animation-name小球弹跳动画实例

  实例中为动画定义了三个名称,分别为每个名称定义了一个关键帧,它们协作控制一个动画的全过程,以下是具体的实例代码:

  html代码:

  <div class="div"><h3>CSS3<br />animation-name</h3></div>

  CSS代码:

  <style type="text/css">
  .div{position:relative;overflow:hidden;width:160px;height:160px; border-radius:80px;border:1px solid #ab9595;background-color:#e3e2e0; text-align:center; vertical-align:middle;
 animation:animation1 2s ease-out forwards, animation2 2s ease-out 2s forwards, animation3 2s ease-out 4s forwards;}

  .div h3{margin-top:55px;}

@keyframes: animation1{

0%{transform:translate(0, 0);opacity:0;}

30%{transform:translate(0, 0);opacity:0.25;}

50%{transform:translate(0, 0);opacity:0.5;}
90%{transform:translate(0, 0);opacity:1;}
100%{transform:translate(0, 100px);opacity:1;}
}

@keyframes: animation2{
0%{transform:translate(0, 20px);opacity:1;}
10%{transform:translate(0, 100px);opacity:1;}
20%{transform:translate(0, 30px);opacity:1;}
30%{transform:translate(0, 100px);opacity:1;}

40%{transform:translate(0, 40px);opacity:1;}
50%{transform:translate(0, 100px);opacity:1;}

60%{transform:translate(0, 50px);opacity:1;}
70%{transform:translate(0, 100px);opacity:1;}
80%{transform:translate(0, 70px);opacity:1;}

85%{transform:translate(0, 100px);opacity:1;}
90%{transform:translate(0, 90px);opacity:1;}
93%{transform:translate(0, 100px);opacity:1;}

96%{transform:translate(0, 95px);opacity:1;}
100%{transform:translate(0, 100px);opacity:1;}}

@keyframes: animation3{
0%{transform:translate(0, 100px);opacity:1;}

50%{transform:scale(1);opacity:1;}
100%{transform:scale(0);opacity:0;}
}
  </style>

  效果图(未见,刷新):

CSS3
animation-name

 

本文浓缩标签:animation动画实例CSS3