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 クライアント ソフトウェア登録クラッキング方法

推薦する

WeChatアプレットのスクロールビューの改行問題を解決する

今日、小さなプログラムを書いていたときに、スクロールビューを使用したのですが、スクロールビュー内のテ...

要素タイムラインの実装

目次コンポーネント - タイムラインカスタムノードスタイルカスタムタイムスタンプコンポーネント - ...

Docker 環境での Jmeter の分散操作に関する詳細なチュートリアル

1. jmeterの基本イメージを構築するDockerfile は次のとおりです。 # Java 8...

Linux で mysql-8.0.20 をインストールするための詳細なチュートリアル

** Linuxにmysql-8.0.20をインストールする**環境の紹介オペレーティングシステム:...

js の関数の長さはどれくらいですか?

目次序文なぜいくらですか?パラメータの数デフォルトパラメータ残りのパラメータ要約する序文今日は関数の...

LinuxシステムにおけるMySQLの一般的な操作コマンド

仕える: # chkconfig --list すべてのシステムサービスを一覧表示する# chkco...

ページ要素の絶対位置と相対位置に関するある程度の理解

今日から、定期的にちょっとした豆知識を整理していきます。簡単なものもあるかもしれませんが、どれも役に...

Docker を使用して Django プロジェクトをデプロイする方法の例

また、Dockerを使用してDjangoプロジェクトをデプロイするのも非常に簡単です。とても良いです...

vueプロジェクトのマルチ環境設定(.env)の実装

目次マルチ環境構成とは何ですか? また、なぜそれが必要なのですか? .env ファイルはどこで設定さ...

Vueはパーセンテージバー効果を実現します

この記事では、パーセンテージバーを実現するためのVueの具体的なコードを参考までに共有します。具体的...

マウスがカード上に移動したときにフローティング効果を実現する CSS の使用例

原理ホバーしたときに要素に影を設定します: box-shadow で、通常とは異なるスタイルにします...

PHP+nginx サービス 500 502 エラーのトラブルシューティングのアイデアの詳細な説明

概要オンラインサービスへのアクセス中に 500 または 502 エラーが発生した場合、緊急処理とトラ...

Tomcat 初回展開 Web プロジェクト プロセス図

独自のWebプロジェクトをtomcatディレクトリの下のwebappsディレクトリに配置します。 R...

CentOS 6.4 MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル

Centos6.4 で mysql5.7.18 をインストールするための具体的な手順が全員に共有され...

DockerでRabbitMqの共通クラスタとミラークラスタを構築する詳細な操作

目次1. RabbitMqの動作環境を構築する1.検索を通じてrabbitmqイメージを照会する2....