CSS 属性値正規マッチングセレクターの使い方 (ヒント)

CSS 属性値正規マッチングセレクターの使い方 (ヒント)

属性値の正規一致セレクターには 3 つの種類があります。

  • [属性^="値"]
  • [属性$="値"]
  • [属性*="値"]

これら 3 つの属性セレクターは、単語ではなく文字と一致します。アングル記号^ 、ドル記号$ 、アスタリスク*は、正規表現における特別な識別子であり、それぞれ前の一致、次の一致、任意の一致を表します。

これらのセレクターを使用すると、純粋な CSS で非常に優れた機能を作成できます。
<!-- 続き -->

ハイパーリンクの小さなアイコンとファイルタイプのグラフィックを表示します

[attr^="val"]前方一致セレクターを使用すると、 <a>要素のリンク アドレス タイプを決定し、対応する小さいアイコンを表示できます。ハイパーリンクを表示する小さいアイコンのスタイルは次のとおりです。

[href] {パディング左: 18px;}
/* リンクアドレス*/
[href^="https"],
[href^="//"] {
    背景: url("./images/link.png") 繰り返しなし 左;
}
/* ウェブページ内のアンカーリンク */
[href^="#"]
    背景: url("./images/anchor.png") 繰り返しなし 左;
}
/* 携帯電話とメール */
[href^="電話番号:"]
    背景: url("./images/tel.png") 繰り返しなし 左;
}
[href^="メール送信先:"]
    背景: url("./images/e-mail.png") 繰り返しなし 左;
}

効果

[attr$="val"]を使用し、セレクターを一致させることで、ファイルタイプの小さなアイコンを表示できます。 CSS は次のとおりです。

/* PDF ファイルを指す */
[href$=".pdf"]
    背景: url("./images/pdf.png") 繰り返しなし 左;
}
/* zipファイルをダウンロード */
[href$=".zip"] {
    背景: url("./images/zip.png") 繰り返しなし 左;
}
/* 画像リンク*/
[href$=".png"],
[href$=".gif"],
[href$=".jpg"],
[href$=".jpeg"],
[href$=".webp"]
    背景: url("./images/image.png") 繰り返しなし 左;
}

効果は以下のとおりです

CSS属性セレクタ検索フィルタリング技術

属性セレクターを使用すると、アドレス帳や都市リストなどの検索フィルタリング効果を実現できます。これによりパフォーマンスが向上し、必要なコードが少なくなります。

HTML 構造は次のとおりです。

<input type="search" id="input" placeholder="都市名またはピンインを入力してください" />
<ul>
    <li data-search="重慶市chongqing">重慶市</li>
    <li data-search="ハルビン市haerbin">ハルビン市</li>
    <li data-search="長春市changchun">長春市</li>
    <li data-search="長沙市長沙">長沙市</li>
    <li data-search="沪shanghai">上海</li>
    <li data-search="杭州市杭州">杭州市</li>
</ul>

この時点で、入力ボックスにコンテンツを入力すると、一致検証用のコードを自分で記述しなくても、入力コンテンツに基づいて CSS コードを動的に作成することで、検索と一致の効果を実現できます。

var eleStyle = document.createElement('style');
document.head.appendChild(eleStyle);
// テキスト入力ボックス input.addEventListener('input', function() {
    var 値 = this.value.trim();
    eleStyle.innerHTML = value ? '[data-search]:not([data-search*="' + value +'"]) { display: none; } ' : '';
});

以上で、CSS 属性値正規一致セレクターを賢く使う方法(コツ)についての記事は終了です。CSS 属性値正規一致に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  シンプルなプログレスバーを作成するための HTML+CSS

>>:  Javascript ツリー メニュー (11 項目)

推薦する

Linux (Ubuntu 18.04) に Anaconda をインストールする詳細な手順

Anaconda は、大規模なデータ処理、予測分析、科学計算のための最も人気のある Python デ...

jQueryはフェードインとフェードアウト効果を実現します

jQuery を使用してフェードインとフェードアウト効果を完成させる前に、まずいくつかのコードを理解...

win10 での mysql5.7.21 の詳細なインストール手順

この記事では、MySQL 5.7.21のインストールとインストール中に発生した問題を参考までに紹介し...

...

DockerにRedisをインストールし、設定ファイルとして起動する詳細な説明

更新: 最近、サーバーがマイニング ウイルスによってハッキングされたことが判明しました。これは、おそ...

MySQL InnoDB ロックの概要

目次1. 共有ロックと排他ロック2. 意図ロック3. レコードロック4. ギャップロック5. ネクス...

イントラネット侵入を実現するためのSSHポート転送

LAN 内のマシンは外部ネットワークにアクセスできますが、外部ネットワークは内部ネットワークにアクセ...

ネイティブ js カスタム右クリック メニュー

この記事の例では、参考のためにjsカスタム右クリックメニューの具体的なコードを共有しています。具体的...

MySQL サーバー 5.7.20 のインストールと設定方法のグラフィック チュートリアル

この記事ではMySQL 5.7.20のインストールと設定方法を記録し、皆さんと共有します1. MyS...

CSSはリモコンのボタンを模倣する

注: このデモはミニプログラム環境でテストされており、他の h5 および pc Web ページにも適...

MySQLの結合クエリ、ユニオンクエリ、サブクエリの原理と使用例の詳細な説明

この記事では、例を使用して、MySQL の結合クエリ、結合クエリ、サブクエリの原理と使用方法を説明し...

MySQL CHARとVARCHARの選択方法

目次VARCHAR 型と CHAR 型結論: VARCHAR 型と CHAR 型VARCHAR と ...

Chromeブラウザの自動パスワード保存プロンプト機能を無効にする方法

注: Web 開発では、フォームに autocomplete="off" を追加...

JavaScript の非同期処理で待機時間を節約できますか?

JavaScriptで非同期実行の結果を同期的に取得するには、 for ループ内でawaitを使用...

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

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