<!DOCTYPE html>
<html>
<head>
<style>
div
{
width:100px;
height:100px;
background:red;
position:relative;
animation:myfirst 5s infinite alternate;
}
@keyframes myfirst
{
0% {background:red; left:0px; top:0px;}
25% {background:yellow; left:200px; top:0px;}
50% {background:blue; left:200px; top:200px;}
75% {background:green; left:0px; top:200px;}
100% {background:red; left:0px; top:0px;}
}
</style>
</head>
<body>
<p>本例在 Internet Explorer 中无效。</p>
<div></div>
</body>
</html>
把上面的代码放置到w3里面测试:http://www.w3school.com.cn/tiy/t.asp?f=css3_animation3
通过测试可以发现,我这边的代码是省略了浏览器兼容问题,只是拿出了一个能作用到的例子来试验:
animation:myfirst 5s infinite alternate;
这一句话是最为重要的,就以这个分析
animation 定义的是这个是一个动画,命名这个动画叫做myfirst , 定义整个完成周期为 5s , infinite ,如果不加这个元素,这个动画就会完成 0%--100%就结束了, 如果我们需要永远的动下去,这个元素起到了循环的作用。alternate 让 这个动画进行反复与上个周期相反的走 -> 100% --0%