目次
セレクターの特異性は、セレクター自体のコンポーネントによって決まります。一意性の値は、0、0、0、0 の 4 つの部分で表されます。セレクターの特異性は次のように決定されます:
p.dark {color:#333 !important; background: white;}
ログイン後にコピー
" >
p.dark {color:#333 !important; background: white;}
ログイン後にコピー
ホームページ ウェブフロントエンド htmlチュートリアル [閲覧注意] CSS 決定版ガイド 2: 構造と Cascading_html/css_WEB-ITnose

[閲覧注意] CSS 決定版ガイド 2: 構造と Cascading_html/css_WEB-ITnose

Jun 24, 2016 am 11:19 AM

おそらく、カスケード スタイル シートの最も基本的な側面の 1 つはカスケードです。これは、矛盾する宣言が並べ替えられ、最終的なドキュメント表現が決定されるカスケード プロセスです。このプロセスの中心となるのは、セレクターとそれに関連する宣言の特殊性、および継承メカニズムです。

具体性

ルールごとに、ユーザー エージェントはセレクターの特異性を計算し、この特異性をルール内の個々の宣言に追加します。要素に 2 つ以上の競合する属性宣言がある場合、最も高い特異性を持つ宣言が優先されます。

セレクターの特異性は、セレクター自体のコンポーネントによって決まります。一意性の値は、0、0、0、0 の 4 つの部分で表されます。セレクターの特異性は次のように決定されます:

セレクターで指定された各 ID 属性値に対して、0、1、0、0 を追加します。

セレクター、属性選択、または疑似クラスで指定された各クラス属性値に、0、0、1、0を追加します。

セレクターで指定された各要素と疑似要素に 0、0、0、1 を加算します。

インラインスタイル、1、0、0、0を追加します。

コンビネータとワイルドカード セレクタは特別性には何も寄与しません

h1{color:red;}/* specifity = 0,0,0,1 */p em{color:purple;}/* specifity = 0,0,0,2 */.grape{color:purple;}/* specifity = 0,0,1,0 */*.bright{color:yellow;}/* specifity = 0,0,1,0 */p.bright em.dark{color:maroon;}/* specifity = 0,0,2,2 */#id216{color:blue;}/* specifity = 0,1,0,0 */div#sidebar *[href]{color:silver;}/* specifity = 0,1,1,1 */h1+p{color:black;font-style:italic;}/* specifity = 0,0,0,2 */<h1 style="color:green;">Green</h1> /* specifity = 1,0,0,0*/
ログイン後にコピー

Importance

CSS では、これらの宣言の終了セミコロンの前に ! important を挿入できます。

p.dark {color:#333 !important; background: white;}
ログイン後にコピー

! important とマークされた宣言には特別な特異性の値はありませんが、重要でない宣言とは別に考慮されます。実際には、すべての ! important 宣言はグループ化され、重要な宣言の特殊性の競合は重要な宣言内で解決され、重要でない宣言と混合されません。重要なステートメントが重要でないステートメントと競合する場合、常に重要なステートメントが優先されます。

継承

スタイルは、指定された要素だけでなく、その子孫要素にも適用されます。

/*将声明color :gray;应用到ul元素时,这个元素会采用该声明。这个值再沿着树向下传播到后代元素,并一直继续,直到再没有更多的后代元素继承这个值为止。值绝对不会向上传播,也就是说,元素不会把值向上传递到其祖先。*//*注意:在HTML中,对于向上传播规则有一个例外:应用到body元素的背景样式可以传递到html元素(html是文档的根元素),相应地可以定义其画布。*/ul {    color: red;}
ログイン後にコピー

一般に、ほとんどのボックス モデル プロパティ (マージン、パディング、背景、境界線を含む) は継承されません。

継承された値には特別性がまったくなく、特別性が 0 ですらない。

ID ツールバーを持つ要素にプレーン テキストのみが含まれ、他のコンテンツが含まれていない限り、これは正常に機能します。ただし、この要素内のテキストがハイパーリンク (要素) の場合は、ユーザー エージェントのハイパーリンク スタイルが優先されます。 Web ブラウザでは、ブラウザのスタイルシートに次のルールが含まれている可能性があるため、これは色が青になる可能性が高いことを意味します:

a:link {color: blue;}

この問題を解決するには、次のステートメントを実行する必要があります。 :

#toolbar {color:white; background:black;}

#toolbar a:link {color:white;} デフォルトのルールは、ツールバーの a 要素にルールを直接指定することでオーバーライドできます。

ワイルドカード セレクターの特異性は 0 であるため、ワイルドカード セレクターが適用されると継承された値が上書きされるため、ワイルドカード セレクターは継承を短絡する効果があることがよくあります。これは、ワイルドカード セレクターを無差別に使用すると、奇妙な問題が発生する可能性があることを示しています。

Cascading

この要素に適用されるすべての宣言を明示的な重みに従って順序付けします。 ! important フラグのあるルールは、 ! important フラグのないルールよりも重みが高くなります。

指定された要素に適用されるすべての宣言をソースごとに並べ替えます。ソースには、作成者、読者、ユーザー エージェントの 3 つがあります。通常、作成者のスタイルは読者のスタイルに優先します。 ! important フラグが付いた Reader スタイルは、! important フラグが付いた作成者スタイルを含む他のすべてのスタイルをオーバーライドします。作成者スタイルと読者スタイルはどちらも、ユーザー エージェントのデフォルト スタイルより強力です。 ...ステートメントの順序付け。特異性が高い要素は、特異性が低い要素よりも大きな重みを持ちます。
  1. 指定された要素に適用されるすべての宣言を出現順に並べ替えます。宣言がスタイル シートまたはドキュメント内で後から現れるほど、その重みは大きくなります。スタイル シート内にインポートされたスタイル シートがある場合、一般に、インポートされたスタイル シートにある宣言が最初に来て、メイン スタイル シート内のすべての宣言が最後に来ると考えられます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTML、CSS、およびJavaScriptの役割:コアの責任 HTML、CSS、およびJavaScriptの役割:コアの責任 Apr 08, 2025 pm 07:05 PM

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

HTMLでの開始タグの例は何ですか? HTMLでの開始タグの例は何ですか? Apr 06, 2025 am 12:04 AM

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

HTML、CSS、およびJavaScriptの理解:初心者向けガイド HTML、CSS、およびJavaScriptの理解:初心者向けガイド Apr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Apr 04, 2025 pm 11:54 PM

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

WebアノテーションにY軸位置の適応レイアウトを実装する方法は? WebアノテーションにY軸位置の適応レイアウトを実装する方法は? Apr 04, 2025 pm 11:30 PM

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? Apr 05, 2025 am 06:15 AM

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...

Routerフォルダーの下のindex.jsファイルでvue.use(vuerouter)を呼び出す必要があるのはなぜですか? Routerフォルダーの下のindex.jsファイルでvue.use(vuerouter)を呼び出す必要があるのはなぜですか? Apr 05, 2025 pm 01:03 PM

Vueアプリケーションを開発するときに、ルーターフォルダーの下にindex.jsファイルにvuerouterを登録する必要性があるため、ルーティング構成で問題が発生することがよくあります。特別...

See all articles