次のようなキーフレーム アニメーションを使用して、2 つ (またはそれ以上) の CSS 変換プロパティを個別にアニメーション化したいと考えています。
@keyframes translatex {
100% {
transform: translateX(100px);
}
}
@keyframes rotatez {
100% {
transform: rotateZ(80deg);
}
}
HTML:
<div class="rect"></div>
アニメーションは 0 秒のtranslatex
遅延で開始し、5 秒間続く必要があります。rotatez
アニメーションは 1 秒遅れて開始し、3 秒間続く必要があります。要素が移動を開始し、.rect
1 秒後に回転を開始し、3 秒後に回転を停止し、さらに 1 秒後に移動を終了します。
アニメーションを適用:
.rect {
animation-name: translatex, rotatez;
animation-duration: 5s, 3s;
animation-timing-function: ease, ease-in-out;
animation-delay: 0s, 1s;
animation-direction: forward, forward;
}
問題は、rotatez
アニメーションのみが適用されることです。
キーフレーム アニメーションやトランジションなど、CSS のみを使用してアニメーションを実装する方法はありますか、それとも JavaScript が必要requestAnimationFrame
ですか?