0
#div {
position: absolute; top: 50px;
width: 100px; height: 100px; background: blue;
    -webkit-animation-name: shift;
    -webkit-animation-duration: 10s;
    -webkit-animation-iteration-count: 2;
    -webkit-animation-direction: reverse;
  }
 @-webkit-keyframes shift{
    from{
        top: 50px;
        left: 0px;    
    }
    20% {
        top: 150px;
        left: 100px;
    }
    to {
        top: 400px;
        left: 300px;
    }   
 }

http://jsfiddle.net/uVv65/2/ 为什么反向动画方向和正常一样?我以为它会从

top: 400px;
left: 300px;

top: 50px;
left: 0px;  
4

3 回答 3

5

“反向”直到最近才成为一个方向。但是,“替代”一直是一个方向,因此要实现“反向”,人们会将迭代计数设为 2,然后给动画一个迭代的负开始偏移量(在您的情况下为 -10 秒),以便动画将从“交替”部分开始。希望“反向”很快渗透到浏览器!

于 2012-10-15T23:51:16.470 回答
1

还有另一种方法可以做到这一点。

@-webkit-keyframes shift{
    from{
        top: 50px;
        left: 0px;    
    }
    10% {
        top: 150px;
        left: 100px;
    }
    50% {
        top: 400px;
        left: 500px;     
    }
    to {
        top: 50px;
        left: 0px;
    }   
 }

演示

于 2012-05-05T12:03:02.423 回答
0

animation-direction属性定义动画是否应在交替循环中反向播放。

试试这个

-webkit-animation-direction:alternate; /* Safari and Chrome */
        animation-direction:alternate;
于 2013-10-18T20:50:20.340 回答