1. ホーム
  2. Web制作
  3. CSS

[CSSチュートリアル】CSSアニメーション 途中で止める方法とポーズを維持する方法

2022-01-21 15:07:33

プリアンブル

私はかつて、ある悩みを抱えていました。タワークレーンからスイングする家を落下させる必要があったのだが、落下の途中で、家は落下の瞬間のスイングの角度を維持する必要があったのだ。最初は、家の現在の振り角度を取得して、落下の瞬間に家のtransform:rotate()に代入しようと思ったのですが、それは面倒で最適とは言えませんでした。

しかし、それは一つのプロパティで解決できる。

アニメーション・プレイステート

I. CSSのみ

このプロパティは、アニメーションを動作サイクルの途中で一時停止させるために使用します。次に開始するときは、現在のフレームから直接開始します。animationプロパティで動作するもので、JSだけでなくCSSでも使えるので、少なくとも角度を取得して割り当てるよりは便利...なはずです。

.xxx {
  animation-play-state: paused;  
  // Once this property is added, the CSS animation will be paused immediately and will remain at the current frame
}

.xxx {
  animation-play-state: running; 
  //Once this property is added, the CSS animation will immediately start running from the current frame;
}

ページ要素にアニメーションを追加し、ホバー状態になったときに

 animation-play-state:pused

マウスがその要素に追いつくと、アニメーションは停止します。

II. JSのみ

//i equals 1 when the media plays and the note floats, i equals 0 when the media pauses and the note pauses.
            if (i == 1) {
                right.style.animationPlayState = "pused"
                audio.pause();
                i = 0;
            } else {
                right.style.animationPlayState = "running";
                audio.play();
                i = 1;
            }

CSSアニメーションを停止してポーズを維持する方法については、この記事がすべてです、より関連するCSSアニメーション停止コンテンツは、スクリプトハウスの過去の記事を検索するか、以下の関連記事を引き続き参照してください、あなたは将来的にもっとスクリプトハウスをサポートして願っています!.