CSS ウェイト値(カスケード)の例の詳細な説明

CSS ウェイト値(カスケード)の例の詳細な説明

•CSSには多くのセレクターがあります。複数のセレクターを同じ要素に適用するとどうなるでしょうか? コード

<!DOCTYPE html>
<html lang="ja">
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル></タイトル>
    <スタイル タイプ="text/css">
      p{
        色:赤;
        フォントサイズ: 10px;
      }
      #包む{
        色: ディープピンク;
        フォントサイズ: 30px;
      }
      。箱{
        色:黄色;
        フォントサイズ: 50px;
      }
    </スタイル>
  </head>
  <本文>
    <p class='box' id="wrap">
       私の色は何色だと思いますか?</p>
  </本文>
</html>

• 実行すれば結果が出る

•要約: この効果は、ブラウザがウェイト値に基づいてどの CSS スタイルを使用するかを決定するために発生します。ウェイト値が高いほど、その優先順位が高くなり、その CSS スタイルが表示されます。id セレクタのウェイト値は 100 > クラスセレクタ 10 > タグセレクタ 1 であるため、最終結果は id セレクタによって設定されたスタイルになります。

• 例2のコード

!DOCTYPE html>
<html lang="ja">
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル></タイトル>
    <スタイル タイプ="text/css">
      *{
          色: シアン;
      }
      div {
          色: 黄色;
      }
    </スタイル>
  </head>
  <本文>
    <div>
        <p class='box' id="wrap">
        私の色は何色だと思いますか?</p>
    </div>
  </本文>
</html>

• 実行結果

•要約: 継承された要素には重み値がないため、最終的な結果はユニバーサルセレクタによって設定されたスタイルになります。

• 例3のコード

<!DOCTYPE html>
<html lang="ja">
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル></タイトル>
    <スタイル タイプ="text/css">
      p{
          色: 黄色;
      }
      *{
          色: シアン;
      }
    </スタイル>
  </head>
  <本文>
    <div>
        <p class='box' id="wrap">
        私の色は何色だと思いますか?</p>
    </div>
  </本文>
</html>

• 実行結果

• 要約: タグセレクタの重みは1ですが、それでもユニバーサルセレクタよりも大きいため、最終結果はタグセレクタによって設定されたスタイルになります。

• 例4のコード

<!DOCTYPE html>
<html lang="ja">
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル></タイトル>
    <スタイル タイプ="text/css">
      div p{
          色: 黄色;
      }
      div>p{
          色: シアン;
      }
      p{
          色: 赤;
      }
    </スタイル>
  </head>
  <本文>
    <div>
        <p class='box' id="wrap">
        私の色は何色だと思いますか?</p>
    </div>
  </本文>
</html>

• 実行結果

• 例5コード

<!DOCTYPE html>
<html lang="ja">
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル></タイトル>
    <スタイル タイプ="text/css">
      div>p{
          色: シアン;
      }
      div p{
          色: 黄色;
      }
      p{
          色: 赤;
      }
    </スタイル>
  </head>
  <本文>
    <div>
        <p class='box' id="wrap">
        私の色は何色だと思いますか?</p>
    </div>
  </本文>
</html>

• 実行結果

重量値の計算

<!--次のような構造があります: -->
<div class='wrap1' id='box1'>
    <div class="wrap2" id="box2">
        <p class='active'>MJJ</p>
    </div>
</div>

<!--重みの値を確認するためにいくつかの例を示します: -->
p{color:gray;} <!--重みは1です-->
div div p{color:yellow;} <!--重みは1+1+1=3です-->
.active{color:red;} <!--重み 10-->
div .active{color:black;} <!-- 重みは 11 です -->
div div .active{color:blue;} <!--重みは12です-->
.wrap #box2 .active{color:purple;} <!-- 重みは 120 です -->
#box1 #box2 .active{color:green;} <!-- 重みは 210 です -->

<!--ここから、実際には、重み値の計算では、まず最初に、重み値が繰り越​​されないことがわかります。使用されるセレクターについては、セレクターの数を数えるだけです (順番は、最初に ID、次にクラス、次に要素)。例: -->
#box1 .wrap2 div{ color:red; } <!--重みは1 1 1です-->

注: 継承された属性にも重み値がありますが、その重み値は非常に低く、継承された重み値が最低であると理解できます。

!重要 ウェイト値を増やす例<!--Web ページのコードを作成するときに、特定のスタイルに最高のウェイト値を設定する必要がある特別なケースがいくつかあります。どうすればよいでしょうか。たとえば、インライン スタイルの重み値が 1000 で比較的大きいことがわかっている場合は、!important を使用して解決できます。 -->   
<!DOCTYPE html>
<html lang="ja">
    <ヘッド>
        <メタ文字セット="UTF-8">
        <title>!important の使用</title>
        <スタイル タイプ="text/css">
            div{
                色:緑 !重要;
            }
        </スタイル>
    </head>
    <本文>
        <div id="box" style="color:red;">
            <span>MJJ</span>
        </div>
    </本文>
</html>

• 実行結果

•要約: !important の使用は悪い習慣であり、できるだけ避けるべきです。スタイルシートの固有の重み比較ルールに重大な違反が生じ、バグのデバッグが困難になるためです。 !important を含む競合する 2 つのルールが同じタグに適用される場合、優先度が最も高いルールが使用されます。

!important はいつ使用できますか?

• 最初

◦ウェブサイトにはサイト全体のスタイルをデザインするCSSファイルがあります
◦ 同時に、あなたやあなたの友人が不適切なインラインスタイルを書いた

• 2番目

box p { color: blue; } p.awesome { color: red; }

テキストの色を赤に変更するにはどうすればいいですか?この場合、!important が適用されないと、最初のルールが常に 2 番目のルールよりも優先されます。

要約:

要約する

上記は、エディターが紹介したCSSウェイト値(カスケード)の例の詳細な説明です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。エディターがすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

<<:  IE7 互換モードで IE8 を有効にするコード

>>:  Javascript DOM、ノード、要素取得の紹介

推薦する

CSSにおけるマージン値と垂直マージンの重なりについて

平行ボックスの余白 (二重余白の重なり) に関する面接の質問: 1 つのボックスに上余白があり、もう...

Docker 基本チュートリアル: Dockerfile 構文の詳細な説明

序文Dockerfile は Docker プログラムによって解釈されるスクリプトです。Docker...

ウェブページ HTML 順序付きリスト ol と順序なしリスト ul

データを整理するためのリストWeb ページの表示を制御する多数の HTML タグを学習した後、読者は...

暗号化における https の Apache 展開の概要

目次目的実験環境実験原理実験手順1. 独立したCAを生成する2. サーバーの秘密鍵と署名要求ファイル...

CentOS 上での MySQL 5.6 のコンパイルとインストール、および複数の MySQL インスタンスのインストールの詳細な説明

--1. mysql用の新しいグループとユーザーを作成する # ユーザー追加 -M -s /sbin...

MySQLデータベースに接続し、クエリ操作を実行するためのIDEAの完全なコード

1.まずMysqlリンク設定ページを書く パッケージ com.wretchant.fredis.me...

nginxフォワードプロキシとリバースプロキシの詳細な説明

目次フォワードプロキシnginx リバースプロキシnginx リバースプロキシ 02リバースプロキシ...

Dockerコンテナのタイムゾーン調整操作

Docker コンテナのタイムゾーンがホストマシンと一致しているかどうかを確認するにはどうすればよい...

シンプルな時計を実装するJavaScript

この記事では、JavaScriptでシンプルな時計を実装するための具体的なコードを参考までに紹介しま...

CentOS7 に YUM 経由で MySQL 5.7 をインストールする詳細な手順

1. インストールパッケージを保存する場所に移動しますcd /home/lnmp 2. MySQL ...

JavaScript のプロトタイプとプロトタイプチェーンの詳細な説明

目次プロトタイプチェーン図プロトタイピングに必須の知識プロトタイププロパティ(プロトタイプを表示) ...

MySQLデータクエリが多すぎるとOOMが発生するかどうかについての簡単な議論

目次サーバー層でのフルテーブルスキャンの影響InnoDB におけるフルテーブルスキャンの影響Inno...

js のプロトタイプ、プロトタイプ オブジェクト、プロトタイプ チェーンの包括的な分析

目次プロトタイプを理解するプロトタイプオブジェクトを理解するインスタンスプロパティとプロトタイププロ...

MySQL 起動失敗の問題とシナリオ分析

1. ワンストップソリューション1. 問題の分析と特定 # MySQL設定ファイルを見つけて、MyS...

データベースミドルウェアMyCatの紹介

1. Mycatの適用シナリオMycat は幅広いシナリオに合わせて開発されており、新しいユーザーが...