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): 入力タグ

推薦する

vue-router を遅延ロードする 3 つの方法のまとめ

遅延読み込みを使用しない 'vue' から Vue をインポートします。 '...

Apache Flink の任意の Jar パッケージのアップロードにより、リモート コード実行の脆弱性が再発する問題が発生する (脆弱性警告)

脆弱性の説明Apache Flink は、分散ストリームおよびバッチ データ処理用のオープン ソース...

Struts2 ジャンプ後に CSS と JS が無効になる問題の解決策のアイデアと実装手順

struts2 アクションの実行後にジャンプした jsp が表示されると、css が機能しません。問...

MySQL データベースの文字化け問題の原因と解決策

序文データベースのデータを表示すると、文字化けした文字が表示されることがあります。実際、どのようなデ...

js における関数のネストとクロージャの詳細

目次1. 範囲2. 関数の戻り値3. 関数のネスト4. 終了5. クロージャの実用的応用1. 内部変...

MySQL 5.7.24 のインストールと設定のグラフィックチュートリアル

この記事では、MySQL 5.7.24のインストールと設定のチュートリアルを参考までに紹介します。具...

Vmvare 仮想マシンを使用して Ubuntu のルート ディレクトリをパーティション分割する方法の紹介

目次序文根拠手順1. CDから仮想マシンを起動する2. GPartedツールを使用してパーティション...

フレックスとポジションの互換性の詳細な説明マイニングノート

今日は、すべてのブラウザ (主に IE 9 以上と Chrome) と互換性のある自分のホームページ...

HTML の rel 属性の分析

.y { background: url(//img.jbzj.com/images/o_y.pn...

VMware 仮想化 KVM のインストールと展開のチュートリアルの概要

仮想化1. 環境セントオス7.3 selinuxとファイアウォールを無効にする2. 仮想化環境の構成...

ハイパーリンクアイコンの仕様: 記事の読みやすさを向上

1. ハイパーリンクアイコンの仕様とは?<br />ハイパーリンクアイコンの仕様は、「C...

Vueコンポーネントの再利用と拡張の詳細な説明

目次概要延長は必要ですか?スロットJavaScript ユーティリティ関数拡張コンポーネントの複数の...

Ubuntu 向け VMware Tools のインストールと構成のチュートリアル

以前、ブロガーは VMware 仮想マシンに Ubuntu システムをインストールしました。まだイン...

Maven で tomcat8-maven-plugin プラグインを使用する詳細なチュートリアル

オンラインで多くの記事を検索しましたが、解決策は見つかりませんでした。次のように、tomcat7-m...