CSSで2つのキーフレームアニメーションを使用しました。 1つは左から右に移動し、もう1つは正確に同じ値を使用しますが、逆にします。CSSアニメーションを逆方向に再利用する(状態をリセットすることによって)
@keyframes moveLeft
{
from {transform: translate3d(50px, 0, 0);}
to {transform: translate3d(0px, 0, 0);}
}
@keyframes moveRight
{
from {transform: translate3d(0px, 0, 0);}
to {transform: translate3d(50px, 0, 0);}
}
ただし、1つのキーフレームアニメーションのみを使用できるかどうかは疑問です。 animation-direction: reverse
を追加するとすぐに、アニメーションは1回しか再生されません。これはおそらく一度だけ使用された情報を保存します。 この情報をどうにかリセットできますか?または、アニメーションを異なる方向に2回使用する可能性はありますか?
あなたの実際のユースケースは 'transition' CSSプロパティを使用できないようですか? http://jsfiddle.net/dtaa0snd/ – Marcelo
私は何度もこの問題に遭遇しました。私が見つけた唯一の解決策は、JSまたは2つの異なるアニメーションを使用することでした。異なる方向の同じアニメーションはどのブラウザでも動作していないようで、おそらく予想される動作です。スペックを掘り下げる必要があります。 – Harry