CSSアニメーションを途中で止めて姿勢を維持する方法

CSSアニメーションを途中で止めて姿勢を維持する方法

序文

かつて、難しい問題に遭遇しました。タワークレーンからスイングハウスを落下させる必要がありましたが、落下の過程で、家は落下の瞬間のスイング角度を維持する必要がありました。当時、私にとっては非常に困難でした。最初は、落下の瞬間に家の現在のスイング角度を取得し、それを家の transform:rotate() に割り当てたいと考えましたが、これは面倒すぎて最適な解決策ではありませんでした。

しかし実際には、この問題を解決できるのは 1 つの属性だけです。

アニメーション再生状態

1. CSSのみ

このプロパティを使用して、アニメーションをそのモーション サイクルで一時停止し、次回開始するときに現在のフレームから直接開始します。これは、アニメーション プロパティで機能するアニメーション プロパティです。CSS でも JS でも使用でき、同様に便利です。少なくとも、角度を取得して割り当てるよりも便利です。

.xxx {
  アニメーション再生状態: 一時停止;  
  //このプロパティが追加されると、CSS アニメーションはすぐに一時停止され、現在のフレームに留まります}

.xxx {
  アニメーション再生状態: 実行中; 
  //このプロパティが追加されると、CSS アニメーションは現在のフレームからすぐに動作を開始します。
}

ページ要素にアニメーションを追加し、ホバー状態のときに表示されるように設定できます。

 アニメーション再生状態:一時停止

マウスを要素の上に移動するとアニメーションは停止します。

2. JSのみを使用する

//i が 1 の場合、メディアが再生され、音符が浮かびます。i が 0 の場合、メディアが一時停止し、音符が一時停止します。
            (i == 1) の場合 {
                right.style.animationPlayState = "一時停止"
                オーディオを一時停止します。
                私 = 0;
            } それ以外 {
                right.style.animationPlayState = "実行中";
                オーディオを再生します。
                私 = 1;
            } 

ここに画像の説明を挿入

CSSアニメーションを停止して維持する方法についての記事はこれで終わりです。CSSアニメーションの停止の詳細については、123WORDPRESS.COMの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

<<:  Linuxドライバのプラットフォームバスの詳細説明

>>:  Vueルータールーティングガードの詳細な説明

推薦する

MySQL の簡単な分析 - MVCC

バージョンチェーンInnoDB エンジン テーブルでは、クラスター化インデックス レコードに 2 つ...

知っておくべき 7 つのネイティブ JS エラーの種類

目次概要1. 範囲エラー2. 参照エラー3. 構文エラー4. タイプエラー5. URIエラー6. 評...

UbuntuでGRUBの起動時間を変更する

grubの起動時間を変更するためのオンライン検索は基本的に/etc/default/grubを変更す...

tomcat+nginx を使用してマルチアプリケーション デプロイメントを実装するためのサンプル コード

目次マルチアプリケーションの展開1-Tomcat 構成1.1- プロジェクト構成1.2-サービス構成...

VMware 仮想マシンの NAT モードを構成する方法

この記事では、VMware仮想マシンのNAT構成プロセスを詳しく説明します。具体的な内容は次のとおり...

MySQLデータ行と行オーバーフローのメカニズムの詳細な説明

1. 行の形式は何ですか? MySQL の行形式の設定は次のように表示されます。 実際、MySQL ...

Vue diffアルゴリズムの完全な分析

目次序文Vue 更新ビューパッチ同じVノードパッチVノード更新子供序文Vue は仮想 DOM を使用...

MySQLのグローバルロックとテーブルロックに関する詳細な理解

序文ロックの範囲に応じて、MySQL のロックは、グローバル ロック、テーブル ロック、行ロックに大...

MySQL 5.6 zipパッケージのインストールチュートリアルの詳細

これまでは、拡張子が .msi のファイル、つまり、完全なインストールが使用されていました。しかし、...

Firefoxでリンクをクリックしたときに点線の枠線を削除する方法

今日、ブラウザの互換性の問題にいくつか遭遇しました。そのうちの 1 つは奇妙に感じました。Firef...

Vue はシェイク機能を実装します (ios13.3 以降と互換性があります)

最近、shake.jsを使用して、shakeに似た機能を作成しました。ただし、shake機能はios...

インスタンス化されたオブジェクトパラメータによるMySQLクエリ例の説明

この記事では、オブジェクト パラメータをインスタンス化して MySQL でデータをクエリする方法を紹...

Centos で MySQL パスワードを変更する方法

1. MySQL ログイン設定を変更します。 # vim /etc/my.cnf文を追加: skip...

VMware 上の CentOS に Oracle12.2 をサイレント インストールする詳細なグラフィック チュートリアル

環境準備: VMware+CentOS、jdk 1. システムディスクのサイズを確認する1. コマン...

Centos7.3は起動時に自動的に起動または指定されたコマンドを実行します

Centos7では、/etc/rc.d/rc.localファイルの権限が削減されており、実行権限があ...