CSSのマッチング問題を解決する

CSSのマッチング問題を解決する

問題の説明

ご存知のとおり、CSS を記述する場合、HTML のクラスの定義または ID の定義に従って、対応する CSS コードが記述されます。クラスごとに異なるスタイルを定義します。もちろん、コードを少なくするために、CSS で一致するものを参照することになります。マッチングには、ファジー マッチングとグローバル マッチングの 2 種類があります。マッチング方法はいくつかあります。もちろん、HTML で異なるクラス名を記述したり、同じクラス名を記述して、すべてのスタイルの一致を実現することもできます。しかし、クラス名を同じように記述できない場合があり、その結果、コードが冗長になり、コードの複雑さが増すことになります。コードの冗長性を減らすために、クラス マッチングが登場します。

解決

最初の方法は、マッチングに div を使用することですが、このマッチングではすべての div に同じスタイルが使用されます。

<div>
<div id='div1'/>
<div id='div2'/>    
</div>
// 内部のすべてのdivのスタイルを設定する場合は、>識別子を使用します。parent>div{
//スタイル//
}

2 番目の方法は、class によって定義されたクラスを一致させることです。この種類のマッチングは比較的正確であり、マッチング方法も 2 つあります。最初のマッチング方法は、矢印記号を使用してマッチングすることです。例: [class^="icon-"]

<!DOCTYPE html>
<html>
<ヘッド>
<メタ文字セット="UTF-8">
<title>タイトル</title>
<スタイル>
[クラス^="アイコン-"]{
幅: 100ピクセル;
高さ: 50px;
背景色: 赤;
}
</スタイル>
</head>
<本文>
<div>1111</div>
<div>2222</div>
<div>3333</div>
<div>4444</div>
<div>5555</div>
</本文>
</html> 

図2.1 効果

ただし、この一致方法では、クラス名の前に icon- を付ける必要があります。クラス名の前に他の名前がある場合、対応する効果は得られません。したがって、別のマッチング方法を使用することもできます。つまり、クラス名のグローバルマッチングです。例えば:

[class*=" icon-"] 、アイコンの前にスペースがあることに注意してください。また、対応するクラス名のグローバル マッチングが実現できるように、上記の矢印をアスタリスクに置き換える必要があります。

<!DOCTYPE html>

<html>

<ヘッド>

<メタ文字セット="UTF-8">

<title>タイトル</title>

<スタイル>

[class*="icon-"]{

幅: 100ピクセル;

高さ: 50px;

背景色: 赤;

}

</スタイル>

</head>

<本文>

<div>1111</div>

<div>2222</div>

<div>3333</div>

<div>4444</div>

<div class="text-success icon-t">555</div>

</本文>

</html> 

図2.2 効果

この方法では、クラス名に Icon が含まれていれば、スタイルを一致させることができます。ただし、この種類のマッチングでは、icon で始まるクラス名に対しては対応する効果が得られないため、2 つを一緒に使用できます。このようにして、マッチング効果を十分に達成することができます。

図2.3 効果

上記の効果を実現するには 2 つの方法があります。 1 つ目は 2 つを一緒に使用すること、2 つ目はアイコンの前のスペースを空けることです。

<!DOCTYPE html>

<html>

<ヘッド>

<メタ文字セット="UTF-8">

<title>タイトル</title>

<スタイル>

[class^="icon-"],[class*="icon-"]{

幅: 100ピクセル;

高さ: 50px;

背景色: 赤;

}

</スタイル>

</head>

<本文>

<div>1111</div>

<div>2222</div>

<div>3333</div>

<div>4444</div>

<div class="text-success icon-test">555</div>

</本文>

</html>

これにより、コードの冗長性が削減されます。

コードを書く過程では、プログラムがより良く実行されるようにコードの冗長性を減らすことを学ぶ必要があります。

CSS のマッチング問題についてはこれで終わりです。CSS マッチングに関するより詳しい内容については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  Linux スワップ パーティション (詳細説明)

>>:  FlashFXP FTP クライアント ソフトウェア登録クラッキング方法

推薦する

mysql: [エラー] 不明なオプション '--skip-grant-tables'

MySQL データベースがエラー 1045 (28000): ユーザー 'ODBC'...

Kylin V10 への zabbix-agent のインストール手順

1. インストールパッケージをダウンロードするダウンロードアドレス: https://sourcef...

SQLでEXPLAINコマンドを使用する方法

日常業務では、実行に時間のかかる SQL ステートメントを記録するために、スロー クエリを実行するこ...

初心者がHTMLタグを学ぶ(2)

関連記事:初心者が学ぶ HTML タグ (1)初心者は、いくつかの HTML タグを理解することで ...

HTML を使用して IE8 および IE9 の互換表示モードを無効にするヒント

IE 8 以降では互換モードが追加され、これを有効にすると IE の下位バージョンでレンダリングされ...

HTML でハイパーリンク タグを使用するチュートリアル

ウェブサイトのさまざまな HTML ドキュメントはハイパーリンクを通じて相互に接続され、一貫性のある...

VirtualBox Centos7 の NAT+ホストオンリーネットワークの落とし穴のまとめ

目次1. 問題の背景2. 仮想マシン ネットワーク カードの接続方法は何ですか? 2.1 NAT 2...

MySQL マスタースレーブ同期における server-id の例の詳細な説明

序文MySQL クラスターを構築する場合、当然のことながら、データの一貫性を確保するために、データベ...

vue 要素 el-transfer にドラッグ機能を追加

コア資産管理プロジェクトでは、el-transfer にドラッグ アンド ドロップによる並べ替えと、...

Centos7.4 システムに yum ソースから mysql 5.6 をインストールする

システム環境: centos7.4 1. データベースがインストールされているかどうかを確認します。...

JSはキャンバス技術を使用してeChartsの棒グラフを模倣します

Canvas は HTML5 の新しいタグです。js を使用して Canvas 描画 API を操作...

JavaScript オブジェクトの組み込みオブジェクト、値型、参照型の説明

目次物体オブジェクト定義オブジェクトのメンバーを反復処理するJS組み込みオブジェクト数学オブジェクト...

Vue Nativeを使用したモバイルアプリケーションの構築プロセスの完全な記録

目次序文Vue Nativeの機能宣言的レンダリング双方向バインディングVue.js エコシステムの...

ネストされた HTML ページの使用例 (フレームセットの使用)

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

Dockerプライベートウェアハウスレジストリの導入

使用される Docker イメージが増えるにつれて、イメージを保存する場所、つまりウェアハウスが必要...