検索
ホームページウェブフロントエンドhtmlチュートリアルCSS の 3 つの主要なメカニズム (機能): 特異性、継承、およびカスケード_html/css_WEB-ITnose

Inheritance (継承) は、ある要素からその子孫の要素に属性値を渡すために使用されるメカニズムです。要素にどの値を適用するかを決定するとき、ユーザー エージェント (ブラウザー) は、継承だけでなく、宣言の特異性、および宣言自体の起源も考慮する必要があります。このプロセスはカスケードと呼ばれます。ここでは、CSS のこれら 3 つのメカニズムの原理と関係について説明します。 1. 特殊事項 各ルールのペアが同じ要素に一致すると仮定して、次の 2 つのルールのペアを考えます:

h1 {color: red; }body h1 { color:green;}
h2.grape {color: purple;}h2 {color: siver;}

一致する色は 1 つだけであるため、ルールの各ペアのうち 1 つだけが勝ちます。では、どのルールがより強いかをどうやって知ることができるでしょうか?答えは各セレクターの特異性にあります。

1.特異性の値:

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

セレクターの具体的な特性は次のように決定されます:

インライン スタイルの場合: 1、0、0、0。

  • セレクター内のID属性値には、0、1、0、0を追加します。
  • セレクター内のクラス属性値、属性選択、または疑似クラスの場合は、0、0、1、0 を追加します。
  • セレクター内の要素および擬似要素には、0、0、0、1を加算します。
  • ワイルドカード セレクター (*)、0、0、0、0 を追加します。
  • 特殊属性の計算値:
    h1 {color: red;}/*specificity=0,0,0,1*/p em {color:purple;}/*specificity=0,0,0,2*/.grade{color:purple;}/*specificity=0,0,1,0*/*.bright{color:yellow;}/*specificity=0,0,1,0*/div#header [href]{color:black;}/*specificity=0,1,1,1 包涵一个属性选择器*/
  • 2. 重要性

    !重要

    時には、いくつかの発言が他のすべての人生を超えて非常に重要になることがあります。このとき、ステートメントの終了セミコロンの前に ! important を挿入してマークすることができます。

    すごい

    2. CSS の継承

    1、

    上の図には 2 つのリストが含まれており、1 つは順序付けされておらず、もう 1 つは順序付けされています。 1つ。 raw color:gray; が body 要素に適用されると、要素はこの宣言を採用します。この値はツリーの下の子孫要素に伝播され、この値を継承する子孫要素がなくなるまで継続されます。 (要素は先祖に値を渡しませんが、例外があります。body要素に適用された背景スタイルはhtml要素に渡すことができます。)

    2. 継承可能なプロパティ

    継承できるプロパティCSS では次のように要約されます - — テキストと画像のサイズとスタイルに関連するすべての属性を継承できます (例: 文字間隔、単語間隔、空白、行の高さ、色、フォントなど)

    3. 継承された属性の特殊性

    継承された値は特殊性ではなく、特殊性が0でもありません。

    3. カスケード

    等しい特性を持つ 2 つのルールが同時に同じ要素に適用された場合、ブラウザはこの競合をどのように解決しますか?たとえば、

    rrree

    これら 2 つのルールの特殊性は 0, 0, 0, 1 であるため、それらの重みは等しいです。ただし、要素が赤と青の両方になることは不可能です。この場合、

    カスケード

    ルールを適用する必要があります。

    1. 指定された要素に一致するセレクターを含む関連ルールをすべて検索します。 2. この要素に適用されたすべての宣言を表示の重みで並べ替えます。 (!重要) フラグのあるルールは、(!重要) フラグがないルールよりも重みが高くなります。要素に適用されるすべての属性をソース、作成者 > リーダー > ユーザー エージェントごとに並べ替えます。

    重みの大きい順に次のとおりです。

    読者からの重要な声明。

    b. クリエイティブスタッフからの重要なお知らせ。

  • c. クリエイティブスタッフからの通常の発言。
  • d、読者からの通常の発言。
  • e、ユーザーエージェント宣言。
  • 3. 特定の要素に適用されたすべての宣言を詳細度で並べ替えます。特異性が高い要素は、特異性が低い要素よりも大きな重みを持ちます。
  • 4. 指定された要素に適用されたすべての宣言を出現順に並べ替えます。宣言がスタイル シートまたはドキュメント内で後から現れるほど、その重みは大きくなります。スタイルシート内にインポートされたスタイルシートがある場合、一般的にはインポートされたスタイルシート内の宣言が最初に来て、メインスタイルシート内の宣言が最後に来ると考えられます。
  • IV. 概要

    カスケード スタイル シートの最も基本的な側面はカスケードです。このカスケード プロセスを通じて、矛盾する宣言が並べ替えられます。

    読者向けの重要な声明 (! 重要) > 作成者向けの重要な声明 (! 重要) > インライン スタイル (1, 0, 0, 0) > ID セレクター (0, 1, 0,0) )>クラス セレクター、属性セレクター、疑似クラス セレクター (0,0,1,0)>要素セレクター (0,0,0,1)>

    ワイルドカード セレクター (0, 0, 0, 0) > 継承されたプロパティ > ブラウザーのデフォルト スタイル。

    特殊なケース: 要素の color および text-decoration 属性、および title 要素の font-size 属性は、ブラウザのデフォルトのスタイルの優先順位を継承します。

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    HTML、CSS、およびJavaScriptの未来:Web開発動向HTML、CSS、およびJavaScriptの未来:Web開発動向Apr 19, 2025 am 12:02 AM

    HTMLの将来の傾向はセマンティクスとWebコンポーネントであり、CSSの将来の傾向はCSS-in-JSとCSShoudiniであり、JavaScriptの将来の傾向はWebAssemblyとServerLessです。 1。HTMLセマンティクスはアクセシビリティとSEO効果を改善し、Webコンポーネントは開発効率を向上させますが、ブラウザの互換性に注意を払う必要があります。 2。CSS-in-JSは、スタイル管理の柔軟性を高めますが、ファイルサイズを増やす可能性があります。 CSShoudiniは、CSSレンダリングの直接操作を可能にします。 3. Webassemblyブラウザーアプリケーションのパフォーマンスを最適化しますが、急な学習曲線があり、サーバーレスは開発を簡素化しますが、コールドスタートの問題の最適化が必要です。

    HTML:構造、CSS:スタイル、JavaScript:動作HTML:構造、CSS:スタイル、JavaScript:動作Apr 18, 2025 am 12:09 AM

    Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。

    HTMLの未来:ウェブデザインの進化とトレンドHTMLの未来:ウェブデザインの進化とトレンドApr 17, 2025 am 12:12 AM

    HTMLの将来は、無限の可能性に満ちています。 1)新機能と標準には、より多くのセマンティックタグとWebComponentsの人気が含まれます。 2)Webデザインのトレンドは、レスポンシブでアクセス可能なデザインに向けて発展し続けます。 3)パフォーマンスの最適化により、応答性の高い画像読み込みと怠zyなロードテクノロジーを通じてユーザーエクスペリエンスが向上します。

    HTML対CSS対JavaScript:比較概要HTML対CSS対JavaScript:比較概要Apr 16, 2025 am 12:04 AM

    Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

    HTML:それはプログラミング言語か何か他のものですか?HTML:それはプログラミング言語か何か他のものですか?Apr 15, 2025 am 12:13 AM

    htmlisnotaprogramminglanguage; itisamarkuplanguage.1)htmlStructuresandformatswebcontentusingtags.2)ItworkswithcsssssssssdjavascriptforInteractivity、強化を促進します。

    HTML:Webページの構造の構築HTML:Webページの構造の構築Apr 14, 2025 am 12:14 AM

    HTMLは、Webページ構造の構築の基礎です。 1。HTMLは、コンテンツ構造とセマンティクス、および使用などを定義します。タグ。 2. SEO効果を改善するために、などのセマンティックマーカーを提供します。 3.タグを介したユーザーの相互作用を実現するには、フォーム検証に注意してください。 4. JavaScriptと組み合わせて、動的効果を実現するなどの高度な要素を使用します。 5.一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれ、検証ツールが必要です。 6.最適化戦略には、HTTP要求の削減、HTMLの圧縮、セマンティックタグの使用などが含まれます。

    テキストからウェブサイトへ:HTMLの力テキストからウェブサイトへ:HTMLの力Apr 13, 2025 am 12:07 AM

    HTMLは、Webページを構築するために使用される言語であり、タグと属性を使用してWebページの構造とコンテンツを定義します。 1)htmlは、などのタグを介してドキュメント構造を整理します。 2)ブラウザはHTMLを分析してDOMを構築し、Webページをレンダリングします。 3)マルチメディア関数を強化するなど、HTML5の新機能。 4)一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれます。 5)最適化の提案には、セマンティックタグの使用とファイルサイズの削減が含まれます。

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

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

    See all articles

    ホット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衣類リムーバー

    AI Hentai Generator

    AI Hentai Generator

    AIヘンタイを無料で生成します。

    ホットツール

    Dreamweaver Mac版

    Dreamweaver Mac版

    ビジュアル Web 開発ツール

    メモ帳++7.3.1

    メモ帳++7.3.1

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

    mPDF

    mPDF

    mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

    Safe Exam Browser

    Safe Exam Browser

    Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

    SAP NetWeaver Server Adapter for Eclipse

    SAP NetWeaver Server Adapter for Eclipse

    Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。