CSSカスケーディングメカニズムについての簡単な説明

CSSカスケーディングメカニズムについての簡単な説明

CSS にカスケード メカニズムがあるのはなぜですか?

CSS では、同じ要素の特定のプロパティに同時に影響を与えるスタイルが複数存在する可能性があるため、カスケード メカニズムによって、作成者 (コードを作成する人)、ユーザー (ページを閲覧する人)、およびユーザー エージェント (通常はブラウザー) 間のスタイルの競合を解決できます。

カスケード内の各スタイル ルールには重み値があります。これらのルールが複数同時に有効になっている場合は、重みが最も高いルールが優先されます。一般的に、作成者が指定したスタイルのウェイト値はユーザーのスタイルのウェイト値よりも高く、ユーザーのスタイルのウェイトはクライアント (ユーザー エージェント) のウェイト値よりも高くなります。一般的な重量値とオブジェクト、あるかどうか!重要なのは、特異性が位置に関係していることです。積み重ね順では、以下の重量値は小さいものから大きいものまでです

(1)ユーザーエージェントスタイル

(2)ユーザー一般スタイル

(3)著者の一般的なスタイル

(4)著者の重要なスタイル(!important)

(5)ユーザーの重要なスタイル(!important)

(6)2つのスタイルが同じコード(たとえば、両方とも作成者(コード)から来ている)から来ていて、それらのスタイル宣言が同等に重要である場合、それらは詳細度に基づいて計算され、詳細度の高いスタイルが低いスタイルを上書きします。

(7)具体性が同じであれば、スタイルが新しいほど優先順位が高くなります。

ユーザーが設定した重要なスタイルが、作成者が設定した重要なスタイルよりも優先されるのはなぜでしょうか。その理由は、ページのフォント サイズの調整など、ユーザーが特別な要件を満たしやすくするためです。

セレクタの特異性の計算

(1)要素のstyle属性に宣言が現れた場合、aは1としてカウントされる。

(2)bはセレクタ内の全てのIDセレクタの数の合計に等しい

(3)cはセレクタ内のすべてのクラスセレクタ、属性セレクタ、疑似クラスセレクタの合計に等しい。

(4)dはセレクタ内のすべてのタグセレクタと疑似要素セレクタの合計に等しい。

abcd はセレクターの詳細度です。比較順序は a から始まり、大きい方が優先されます。

知らせ:

  1. 継承は優先度が最も低く、詳細度も低い
  2. 結合子(+、>など)とユニバーサルセレクタ(*)の特異性は0です。
.box{} /*特異度=0,0,1,0*/
.box div{} /*特異度=0,0,1,1*/
#nav li{} /*特異度=0, 1, 0, 1*/
p:first-line{} /*特異度=0,0,0,2*/
style="" /*詳細度=1,0,0,0*/

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  MySQL のスローログ監視の誤報問題の分析と解決

>>:  HTML フォームタグチュートリアル (3): 入力タグ

推薦する

ドラッグフォトウォールを実現するネイティブJS

この記事では、ネイティブ JS で実装されたドラッグ可能な写真ウォールを紹介します。効果は次のとおり...

Linux での MySQL のインストールに関するチュートリアル

目次1. 古いバージョンを削除する2. サーバーのカーネルタイプを確認し、適切なバージョンをダウンロ...

Linux での MySQL 5.7.16 無料インストール バージョンのグラフィック チュートリアル

この記事では、参考までにMySQL 5.7.16の無料インストール版のチュートリアルを紹介します。具...

MySQL インデックス使用状況監視スキル (収集する価値あり!)

概要リレーショナル データベースでは、インデックスは、データベース テーブル内の 1 つ以上の列の値...

MySQL マスタースレーブレプリケーションの実践の詳細説明 - ログポイントに基づくレプリケーション

ログポイントベースのレプリケーション1. マスターデータベースとスレーブデータベースに専用のレプリケ...

HTML で色を表すには、6 桁の 16 進コード、RGB、またはキーワードを使用します。

HTML で色を表す方法は 3 つありますが、最もよく使われるのは 6 桁の 16 進コード表現です...

コンパイル/サーバーなしでブラウザにCommonJSモジュールを実装する

目次導入1. one-click.jsとは2. パッケージングツールはどのように機能しますか? 3....

XHTML 入門チュートリアル: シンプルな Web ページの作成

1 分で最初の Web ページを作成します。簡単な Web ページを作ってみましょう。ぜひフォローし...

Linux でバックグラウンド タスクを実行するために nohup と screen を使用する例と違いの簡単な分析

SSH ターミナル (putty、xshell など) を使用して Linux サーバーに接続し、時...

MySQL の最適化: InnoDB の最適化

勉強の計画は簡単に中断され、継続するのが困難です。先日、社内で事業の方向性を調整するための会議があり...

JavaScript でウェブ プレーヤーを実装する

今日は、JavaScript を使用して Web ページ上にプレーヤーを作成する方法を紹介します。誰...

テーブルの追加と削除の操作を実装する js

この記事の例では、テーブルを追加および削除するためのjsの具体的なコードを参考までに共有しています。...

時刻を保存するために適切な MySQL の datetime 型を選択する方法

データベースを構築してプログラムを書くとき、日付と時刻の使用は避けられません。データベースには、ti...

MySQL 8.0.14 のインストールと設定方法のグラフィックチュートリアル (一般)

MySQLサービス8.0.14のインストール(一般)の参考までに、具体的な内容は次のとおりです。イ...

proxy_pass を設定した後に Nginx が 404 を返す問題を解決する

目次1. proxy_pass を設定した後に Nginx が 404 を返す問題のトラブルシューテ...