CSS セレクターの重みの理解(個人テスト)

CSS セレクターの重みの理解(個人テスト)


コードをコピー
コードは次のとおりです。

<スタイル タイプ="text/css">
div.ui_info {フォントサイズ: 16px;}
.ui_info {フォントサイズ: 14px;}
</スタイル>


コードをコピー
コードは次のとおりです。

<div class="ui_infor">
<p>CSS のテスト</p>
</div>

上記の例では、最終的な表示効果は font-size: 14px; ではなく font-size: 16px になります。
このセレクタの組み合わせには、判断するための簡単な方法があります。
0,0,0,0
最初の数字はラベルに書かれたスタイルを表します。例えば、

コードをコピー
コードは次のとおりです。

<p style="font-size: 14px;"></p>

2桁目はIDセレクタを表します(例: #demo {})
3桁目は、クラス名 (.demo {}) または疑似クラス (:hover) または属性セレクタ [rel="xx"] を表します。
4桁目はタグセレクター p {} を表します。
では、最初の例で練習してみましょう。

コードをコピー
コードは次のとおりです。

div.ui_info {フォントサイズ: 16px;}

重みは0,0,1,2です

コードをコピー
コードは次のとおりです。

.ui_info {フォントサイズ: 14px;}

重みは0,0,1,1です
結果: 0,0,1,2 > 0,0,1,1 なので、font-size: 16px が表示されます。
補足: !important は最も重みが高いため、判断する必要はありませんが、IE-6 ブラウザではバグが発生します。
例:

コードをコピー
コードは次のとおりです。

p {フォントサイズ: 18px !重要;フォントサイズ: 12px;}

IE-6 ブラウザでは、font-size: 12px が表示されます。インターネット上の情報には、IE-6 は !important をサポートしていないと記載されていますが、これは誤りです。
例を見てみましょう:

コードをコピー
コードは次のとおりです。

p {フォントサイズ: 18px !重要;}
フォントサイズ: 12px;

IE-6 では font-size: 18px と表示されるので、IE-6 は !important をサポートしていますが、パフォーマンスが少しおかしくなります。おかしなのは、!important 属性が同じ名前の後続のスタイルによって上書きされることです。
たとえば、例 p {font-size: 18px !important;font-size: 12px;} では、font-size: 12px が font-size: 18px !important を上書きします。
この癖を使えば、CSS_hackを使わずにIE-6で「min-height」を実装できる。

コードをコピー
コードは次のとおりです。

p { 最小高さ: 50px; 高さ:自動 !重要; 高さ:50px;}

<<:  Kylin 4.0.2 (Ubuntu) でブート パーティションを拡張するプロセスの紹介

>>:  MySQLチュートリアルではストアドプロシージャを徹底的に理解します

推薦する

デザインにおけるユーザーエクスペリエンスの背後にある8つのユーザー本能について話す

編集者注: この記事は、Teambition チームの @娄昊川 が寄稿したものです。Teambit...

ネットワークセグメント内の IP アドレスに対する Nginx の接続制限設定の詳細な説明

Nginx におけるいわゆる接続制限は、実際には TCP 接続、つまり 3 ウェイ ハンドシェイク後...

Linuxでスワップパーティションファイルを作成する方法

スワップの紹介Linux のスワップ (スワップ パーティション) は、Windows の仮想メモリ...

JavaScript 改ざん防止オブジェクトの使用例

目次JavaScript 改ざん防止オブジェクト1. 拡張不可能なオブジェクト2. 封印された物体3...

dockerでredis5.0.3をインストールする方法

1. 公式5.0.3イメージを取得する [root@localhost ~]# docker pul...

nginx は画像表示の遅さとダウンロードの不完全さの問題を解決します

前面に書かれた最近、ある読者から、ブラウザからサーバーにアクセスすると、画像の表示が遅く、ブラウザに...

elementui の el-popover スタイルの変更が有効にならない問題の解決策

element-uiを使用する場合、el-popoverというよく使われるコンポーネントがありますが...

JS+Canvas でダイナミックな時計効果を実現

参考までに、Canvas をベースにしたダイナミッククロックのデモを用意しました。具体的な内容は次の...

ES6実装クラスのプライベート変数の書き方をいくつか詳しく説明します

プライベート変数のクロージャ実装プライベート変数は共有されないnew キーワードにより、 perso...

Python ベースの Linux システムにおける特定のプロセスのパフォーマンス監視の考え方の詳細な説明

インターネット上には Linux サーバーを監視するためのツール、コンポーネント、プログラムが多数あ...

CSSでフォントアイコンを使用する方法をお教えします

まず、フォントアイコンとは何でしょうか?表面的にはアイコンですが、実際はテキストです。テキストの設定...

JSONデータをHTMLで表示する方法

背景:場合によっては、json データをページに直接表示する必要があります (たとえば、インターフェ...

React スキャフォールディングの構築方法を学ぶ

1. フロントエンドエンジニアリングの複雑さいくつかの小さなデモ プログラムを開発するだけであれば、...

Windows で MySQL インストーラーを使用して MySQL サービスをインストールするチュートリアル図

MYSQL は、MYSQL サービスやその他のコンポーネントをインストールするためのインストーラ方式...

レスポンシブデザインについての簡単な説明

1. レスポンシブ デザインとは何ですか?レスポンシブデザインとは、ウェブサイトの開発プロセス中に、...