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 項目)

推薦する

グリッド共通レイアウトの実装

両側に隙間なし、各列間に隙間あり 幅: 100%; 表示: グリッド; グリッドテンプレート列: r...

Linux で ARM 開発ボード用のファイルシステムを作成する

1. Busyboxのソースコードをオンラインでダウンロードしてください。コンパイル方法については、...

CSS3 画像の境界線を学ぶのに役立つ記事

CSS3 border-image プロパティを使用すると、要素の周囲に画像の境界線を設定できます。...

React Contextの理解と応用についてお話ししましょう

目次序文React Context の初見コンテキストの使い方コンテキストを直接取得できるいくつかの...

Linuxでディレクトリを効率的に切り替える方法

Linux でディレクトリを切り替えるとなると、誰もが間違いなくcdコマンドを思い浮かべるでしょう。...

メッセージボードにメッセージを追加および削除するための JavaScript

この記事では、JavaScript メッセージ ボードでメッセージを追加および削除する小さな例を詳細...

デザイン理論: デザインにおける階層

<br />原文: http://andymao.com/andy/post/80.ht...

Vueを使い始める際に習得する必要がある知識について簡単に説明します

最も人気のあるフロントエンド フレームワークの 1 つとして、Vue は多くのフロントエンド開発エン...

モバイル端末での Vue2.x Picker のグローバル呼び出し実装

目次ピッカーコンポーネントとはピッカーコンポーネントの問題解決オプションの説明解決ディレクトリ部門P...

Vueはシンプルなショッピングカートの例を実装します

この記事では、参考までに、Vue の具体的なコードを共有して、簡単なショッピングカートを実装します。...

Link と @import の違いを詳しく見る

ページで CSS を使用する主な方法は、スタイル属性値をインラインで追加する方法、ページ ヘッダーで...

ウェブページの画像の回転を実現するjs

この記事では、Webページの画像の回転を実現するためのjsの具体的なコードを参考までに共有します。具...

HTML タグでの this の使用法の紹介

例えば:コードをコピーコードは次のとおりです。 <html> <ヘッド> &...

MySQL 8.0.18 のインストールと設定のグラフィックチュートリアル

学習目標: Windowsシステムを使用してMySQLデータベースをインストールする方法を学びます。...

Dockerを使用してElasticsearchクラスターを素早くデプロイする方法

この記事では、 Dockerコンテナ ( docker-composeを使用してオーケストレーション...