先看下效果:

除了有点快,动画效果还可以。
它是怎么实现的?
拿第一个双块舞动画研究一下好啦。
mxml:
-
-
class="sk-wandering-cubes">
-
class="sk-cube sk-cube1">
-
class="sk-cube sk-cube2">
-
css:
-
.sk-wandering-cubes .sk-cube {
-
background-color: #67cf22;
-
width: 10px;
-
height: 10px;
-
position: absolute;
-
top: 0;
-
left: 0;
-
-webkit-animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
-
animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
-
}
-
-
.sk-wandering-cubes .sk-cube2 {
-
-webkit-animation-delay: -0.9s;
-
animation-delay: -0.9s;
-
}
-
-
@-webkit-keyframes sk-wanderingCube {
-
0% {
-
-webkit-transform: rotate(0deg);
-
transform: rotate(0deg);
-
}
-
-
25% {
-
-webkit-transform: translateX(30px) rotate(-90deg) scale(0.5);
-
transform: translateX(30px) rotate(-90deg) scale(0.5);
-
}
-
-
50% {
-
/* Hack to make FF rotate in the right direction */
-
-webkit-transform: translateX(30px) translateY(30px) rotate(-179deg);
-
transform: translateX(30px) translateY(30px) rotate(-179deg);
-
}
-
-
50.1% {
-
-webkit-transform: translateX(30px) translateY(30px) rotate(-180deg);
-
transform: translateX(30px) translateY(30px) rotate(-180deg);
-
}
-
-
75% {
-
-webkit-transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
-
transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
-
}
-
-
100% {
-
-webkit-transform: rotate(-360deg);
-
transform: rotate(-360deg);
-
}
-
}
是用css3动画样式实现的效果。sk-wanderingCube是自定义的动画名称,并非css3预定义的。
如果将两个方块,加到3个,如何?
添加一个sk-cube3,及其对应的新式?
-
class="sk-cube sk-cube3">
-
-
.sk-wandering-cubes .sk-cube3 {
-
-webkit-animation-delay: -0.45s;
-
animation-delay: -0.45s;
-
}
运行一下,不失所望:

(实际运行效果没有这么快,不知为什么用QQ截取动画后就变快了~)
如果把动画改慢一点,让三个方块,平均分布也是可以的,让其在空间上平均分布,即是让它们平均动画时间。

达到这样的效果,修改每桢间隔0.6s就可以了:
-
.sk-wandering-cubes .sk-cube {
-
background-color: #67cf22;
-
width: 10px;
-
height: 10px;
-
position: absolute;
-
top: 0;
-
left: 0;
-
-webkit-animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
-
}
-
-
.sk-wandering-cubes .sk-cube2 {
-
-webkit-animation-delay: -0.6s;
-
邀请