質問 js を使用して CSS 疑似クラス スタイルを変更するにはどうすればよいでしょうか?しかし、js には疑似クラスセレクターがないので、どうすればよいでしょうか?要素クラスを切り替えたり、スタイルに新しいスタイルを動的に挿入したりするなど、インターネット上にはさまざまな方法があります。 次に別の方法を紹介します。これは、CSS 変数 (var) を設定し、この変数を JS を通じて変更してこれを実現する方法です。 例: div のホバー背景色を変更する <!-- css --> <スタイル タイプ="text/css"> :根 { --divHoverColor: 赤; } div { 幅: 100ピクセル; 高さ: 100px; 背景:素焼き。 } div:ホバー{ 背景: var(--divHoverColor); } </スタイル> <!-- html --> <div onClick="onDivClick('green')"/> <!-- js --> <script type="text/javascript"> 関数onDivClick(値){ document.documentElement.style.setProperty('--divHoverColor', 値); } </スクリプト> それでは、CSS 変数について理解しましょう。 1. 基本的な使い方 ローカル変数 div { --masterColor: 赤; 背景: var(--masterColor); } グローバル変数 /* HTML の場合、:root は <html> 要素を参照します */ :根 { --masterColor: 赤; } div { 背景: var(--masterColor); } 2. 構文 var( <カスタムプロパティ名> [, <宣言値> ]? ) <custom-property-name> : カスタムプロパティ名 <宣言値> : 宣言値(フォールバック値) 例: div { /* --masterColor は未定義なので、背景色は赤になります カンマで区切られた複数の宣言値を定義できます。var(--masterColor, red, green) */ 背景: var(--masterColor, red); } 変数はvar()を使用して参照できます 例: div { --masterColor: 赤; --bgColor:var(--masterColor) } 注意: 属性名には変数は使用できません。 エラー例: div { --bg: 背景; var(--bg): 赤; } 3. ブラウザのサポート 使えますか @support検出の使用 @supports ( (--masterColor: 赤)) { /* サポートされています */ } @supports ( not (--masterColor: red)) { /* サポートされていません */ } JS検出の使用 定数 isSupported = window.CSS && window.CSS.supports && window.CSS.supports('--masterColor', '赤'); サポートされている場合 /* サポートされています */ } それ以外 { /* サポートされていません */ } 参照する 翻訳 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
<<: HTML&CSS&JS 互換性ツリー (IE、Firefox、Chrome)
>>: MySQL 上級学習インデックスの長所と短所、使用ルール
以下にリストされているすべてのブログはオリジナルであり、独自にデザインされています。これらは、他者が...
a タグ疑似クラスの役割: 「:link」: 訪問されていないタグの状態。 「:visited」: ...
背景mysql.slow_log からスロー クエリ ログを取得するのは遅く、テーブルは csv テ...
目次序文一般的な方法1. 親コンポーネントを介して子コンポーネントの発行イベントをリッスンしてpro...
タイトルを左に、日付を右に揃えたいのですが、日付の範囲に float:right を直接追加すると、...
この記事では、例を使用して、MySQL サーバーのスレッド数を表示する方法について説明します。ご参考...
目次問題の説明一般的な機能効果は次のとおりです。思考分析完全なコード要約する問題の説明Teambit...
この記事ではvueを使用し、マウスクリックイベントといくつかの小さなページの最適化を追加します。 基...
目次1. JDKをインストールする2. Jenkinsをインストールする3. Jenkinsの設定を...
mysql-5.7.17.msiのインストール、スクリーンショットに従ってください、ステップバイステ...
この記事では、Docker を使用して MySQL をデプロイし、データを保持する方法について簡単に...
スレッドが同時に実行される場合、スレッドがリソースを競合してデータの曖昧さが生じるのを防ぐために、重...
MySQL8.0.12 インストールチュートリアルをみんなで共有します。 1. インストール1.イン...
MySql データベース システムをインストールして構成します。 1. ダウンロード http://...
最初のステップは、MySQL 8.0.23の無料インストールバージョンをダウンロードすることです。 ...