Вы можете указать собственную кривую с помощью свойства -webkit-animation-timing-function
CSS.
Формат функции: cubic-bezier(P1x, P1y, P2x, P2y)
, где P1 и P2 - две средние точки кубической кривой Безье от (0,0) до (1,1). В вашем случае вы хотите что-то похожее -
EaseOutBack http://i56.tinypic.com/adg8yo.png
Таким образом, точки, которые вы бы указали на этой кривой, - (0,0)
и (0.2,1)
. Это делает кривую - cubic-bezier(0,0,0.2,1)
.
Увы, спецификация кубической кривой webkit не позволяет анимации превышать границы 1,1 куба. Таким образом, чтобы фактически анимировать кривую, как вам нужно, вам нужно добавить дополнительный ключевой кадр, который определяет «переполнение».
@-webkit-keyframes snapback {
0% {
-webkit-transform:translateX(0px);
}
60% {
-webkit-transform:translateX(140px);
}
100% {
-webkit-transform:translateX(100px);
}
}
Взгляните на пример, который я бросил вместе - http://jsfiddle.net/Heqs8/