CSS の優先順位について話す前に、CSS とは何か、CSS が何に使用されるのかを理解する必要があります。 まず、CSS について簡単に説明します。CSS は Cascading Style Sheets の略です。その仕様は、インターネットの歴史におけるユニークな開発段階を表しています。現在、Web ページ制作に携わっている方であれば、Web ページの作成過程で CSS を使用する必要があることが多いため、CSS について聞いたことがない人はほとんどいないはずです。 2 つ目: CSS を使用して、ドキュメントの外観をリッチかつ簡単に変更できるように設定し、Web ページ作成者の作業負荷を軽減することで、制作コストとその後のメンテナンス コストを削減できます。 実際のところ、CSS とは何か、その機能とは何かを今さら語るのは全く冗長です。Web ページ制作に携わっている友人なら、すでにある程度は CSS に触れていると思います。 さて、今日の話題に戻りましょう。 1. CSS の優先度とは何ですか? いわゆる CSS 優先度は、ブラウザで CSS スタイルが解析される順序を指します。 2. CSSの優先順位ルール スタイルには優先順位があるため、優先順位を決定するルールがあり、この「ルール」がこの記事の焦点となります。 スタイル シートの詳細度は、さまざまなルールの相対的な重みを表します。基本的なルールは次のとおりです。
最後に、スペースやカンマを入れずに 3 つの数字を正しい順序で入力して、3 桁の数字を作成します (CSS 2.1 では 4 桁を使用します)。 (数字を 3 桁で終わる大きな数字に変換する必要があることに注意してください)。セレクターに対応する番号の最終的なリストにより、どの番号が大きい機能が低い番号の機能をオーバーライドするかを簡単に判断できます。 例えば:
3. 特徴分類のためのセレクタリスト 以下は、特性別に分類されたセレクターのリストです。
上の表だけ見ると、理解しにくいようです。別の表を以下に示します。
上記から、HTML タグの重みは 1、CLASS の重みは 10、ID の重みは 100、継承の重みは 0 (後述) であることが簡単にわかります。 これらの規則に従って、数値文字列を少しずつ追加して最終的な重みを取得し、比較を行うときに左から右に少しずつ比較します。 優先度の問題は、実際には競合解決の問題です。CSS セレクターによって同じ要素 (コンテンツ) が選択された場合、優先度に応じて異なる CSS ルールを選択する必要があります。実際には多くの問題が関係しています。 ここで、CSS の継承について説明しなければなりません。 複数の CSS スタイル ファイルが Web ページに読み込まれますが、そのうちの 1 つは Ext ライブラリに付属するスタイル ファイルであり、すべてのタグの一部のスタイルを定義しているため、元の Web ページが正しく表示されません。対応するスタイルを見つけることで、正しいスタイルがリセットされます。 body タグに新しいスタイルを追加しますが、2 つのスタイルが表示され、Ext スタイルは引き続き有効です。最後に、新しいスタイルを設定するときに * を追加しなかったため、body タグにのみ有効になり、サブタグには有効にならないことがわかりました。以下は修正されたスタイルです コードをコピー コードは次のとおりです。.diy、 .diy *{ ボックスのサイズ: コンテンツボックス; -moz-box-sizing: コンテンツボックス; -webkit-box-sizing: コンテンツボックス; } タグに複数のスタイルが定義されていて、スタイル間に競合がある場合、優先順位は「ID に定義されたスタイル」>「クラスに定義されたスタイル」>「タグ タイプに定義されたスタイル」になります。例えば、次のスタイル コードをコピー コードは次のとおりです。div{ 境界線:2px 実線 #0000FF; } .パワーヘッダー{ 境界線:2px 実線 #00ff00; } #ナビゲーション{ 境界線:2px 実線 #ff0000; } <div id="navigation" class="powerHeader"> タグでは、まず #navigation が適用され、#navigation が存在しない場合は .powerHeader スタイルが適用され、最後に div スタイルが適用されます。 同時に、単一のリンクまたはスタイルを使用して複数のタグ クラスを定義することで競合が発生した場合は、最後に定義されたクラスが適用されます。 CSS スタイルの優先順位を理解することで、Web ページの開発における多くのスタイル競合の問題を回避できます。 |
<<: node.js で PC 上の WeChat アプレット パッケージを復号化するための処理アイデア
>>: HTMLページが3秒後に自動的にジャンプする3つの一般的な方法
axiosをインストールして通信を実装するここでは、axios を使用して Vue フロントエンドと...
この問題に関して、オンライン リソースをたくさん見つけました。ここにいくつかの方法を示します。コード...
CN2ラインとは何ですか? CN2 は、China Telecom Next Carrier Ne...
目次次のチェックv-model 構文シュガー.sync 修飾子$セット計算プロパティセット要約する次...
vsftpd の概要vsftpd は「very secure FTP daemon」の略称で、セキ...
ユーザーがプライバシーを意識するようになり、オンライン トラッキングに対する予防策を強化するにつれて...
1. 効果を達成する 2 知識ポイント2.1 <label> タグHTML では、<...
目次1. Vueルーター1. 説明2. 選択したルートのレンダリング: 3. 基本的な動作原理2. ...
目次1. コンパイラコードフォーマット仕様設定2. Vueテンプレートの設定1. コンパイラコードフ...
Nginx はネストされた if ステートメントをサポートしておらず、if ステートメントでの論理判...
この記事は主に、MySQL インデックスの長さ制限の原理の分析を紹介します。サンプル コードを通じて...
目次01 よくある故障 1 02 よくある欠陥 2 03 よくある欠陥 3 04 よくある欠陥 4 ...
序文データベースでは、一部のデータ テーブルとデータは latin1 であり、一部のデータ テーブル...
CentOS 7にPostgreSQL 11をインストールする PostgreSQL: 世界で最も先...
まず、行の高さが要素の高さと等しい場合にテキストが垂直方向に中央揃えにならない理由を説明します。実際...