🎨 CSSセレクターテスター

HTMLにCSSセレクターを適用し、マッチする要素をリアルタイムでハイライト表示。詳細度(Specificity)も自動計算します。

マッチ数: 0 要素
詳細度:
0 inline
,
0 ID
,
0 class等
,
0 要素

CSSセレクター クイックリファレンス

基本セレクター

構文説明
element要素セレクター(例: p, div, span)
.classクラスセレクター
#idIDセレクター
*全称セレクター(全要素)

結合子

構文説明
A B子孫セレクター(Aの中のB)
A > B子セレクター(Aの直下のB)
A + B隣接兄弟セレクター(Aの直後のB)
A ~ B一般兄弟セレクター(Aの後のB)

属性セレクター

構文説明
[attr]属性が存在する要素
[attr=val]属性値が完全一致
[attr^=val]属性値が前方一致
[attr$=val]属性値が後方一致
[attr*=val]属性値が部分一致

疑似クラス

構文説明
:first-child最初の子要素
:last-child最後の子要素
:nth-child(n)n番目の子要素
:hoverホバー状態
:focusフォーカス状態
:not()否定疑似クラス

疑似要素

構文説明
::before要素の前にコンテンツを挿入
::after要素の後にコンテンツを挿入
::first-line最初の行

使い方・活用例

  • HTMLを貼り付けてCSSセレクターを入力すると、マッチする要素がハイライト表示されます
  • 詳細度(Specificity)が自動計算されるため、セレクターの優先順位を確認できます
  • プリセットセレクターを使って、よく使うパターンをすぐにテストできます
  • サンプルHTMLボタンで、テスト用のHTMLを簡単に読み込めます
  • マッチ要素一覧で、タグ名・ID・クラスを確認してセレクターを調整できます
  • クイックリファレンスで、セレクターの構文をすぐに確認できます

CSSセレクターテスターとは

CSSセレクターテスターは、作成したセレクターがHTMLの要素を正しく選択できているかをリアルタイムで検証するツール。複雑なセレクターを書いた時の動作確認や、セレクター詳細度の計算が素早くできるため、CSS開発の効率が格段に向上します。

使い方ガイド

・HTMLコードを入力欄に貼り付ける
・テストしたいCSSセレクターを入力
・リアルタイムで該当要素がハイライト表示される
・詳細度(Specificity)が自動計算される
・クイックリファレンスを確認しながら複数のセレクターを試行

活用シーン

・複数の同じクラスを持つ要素から特定の1つだけを選びたい時
・:nth-child や :not などの疑似クラスの動作確認
・既存CSSの詳細度競合を調査し、より低い詳細度で上書きする方法の検討
・新しいセレクター構文(:has、:is など)の対応ブラウザ確認

知っておきたいポイント

詳細度の理解はCSSマスターの鍵。ID(100)、クラス・属性・疑似クラス(10)、要素型・疑似要素(1)のスコア合算で優先度が決まります。このツールで数値化すれば、なぜスタイルが反映されないのか原因を素早く特定できます。

よくある質問

CSSセレクターとは何ですか?

CSSセレクターは、HTML文書内の特定の要素を選択するためのパターンです。要素名、クラス名、ID、属性、疑似クラスなどを組み合わせて、スタイルを適用する対象を指定します。例えば「.menu > li:first-child」は、menuクラスの直下にある最初のli要素を選択します。

詳細度(Specificity)とは何ですか?

詳細度はCSSセレクターの優先度を決める仕組みです。(a, b, c, d)の4つの値で表され、aはインラインスタイル、bはIDセレクターの数、cはクラス・属性・疑似クラスの数、dは要素・疑似要素の数を示します。詳細度が高いセレクターのスタイルが優先されます。

対応しているセレクターの種類は?

要素セレクター、クラスセレクター、IDセレクター、属性セレクター、疑似クラス(:first-child, :nth-child等)、疑似要素(::before, ::after等)、結合子(子孫、子、隣接兄弟、一般兄弟)など、ブラウザがサポートする全てのCSSセレクターに対応しています。

マッチングはどのように動作しますか?

入力されたHTMLを内部でパースし、querySelectorAllを使用してCSSセレクターに一致する要素を検索します。マッチした要素は黄色の背景と赤いボーダーでハイライト表示され、要素のタグ名・ID・クラス名が一覧で表示されます。

リファレンスパネルには何が含まれていますか?

基本セレクター(要素、クラス、ID、全称)、結合子(子孫、子、隣接兄弟、一般兄弟)、属性セレクター、疑似クラス(:first-child, :nth-child等)、疑似要素(::before, ::after等)の構文と説明が一覧で確認できます。

入力したデータは安全ですか?

はい、全ての処理はブラウザ内で完結しており、入力されたHTMLやセレクターがサーバーに送信されることはありません。安心してご利用いただけます。

詳細度の数値はどのように計算されますか?

詳細度は「ID(a)、クラス・属性・疑似クラス(b)、要素・疑似要素(c)」の3つの値で計算されます。例えば`.myClass p`は(0,1,1)、`#header .nav`は(1,1,0)となり、数値が大きいほど優先度が高くなります。このツールはマッチしたセレクターの詳細度を自動計算・表示するため、CSSの優先順序を一目で判断できます。

複雑なセレクター(隣接セレクターや属性セレクター)もテストできますか?

はい、隣接セレクター(+)、汎用セレクター(~)、属性セレクター([attr]、[attr="value"])、疑似クラス(:hover、:nth-childなど)をすべてサポートしています。リアルタイムでマッチした要素がハイライト表示されるため、意図した要素が正しく選択されているか確認できます。

疑似要素(::before、::after)はセレクターテスターで表示されますか?

疑似要素はDOMに実際に存在しないため、ハイライト表示されません。ただしセレクターの詳細度には含まれるため、スタイル定義の優先順位を計算する際には正しく反映されます。

セレクターがマッチしない場合、どのようにデバッグすればよいですか?

セレクターを段階的にシンプルにして、どの部分で失敗しているか確認してください。例えば`.container > p`が失敗した場合、まず`.container`だけテストして要素が選択されることを確認し、その後に`>`演算子を追加するという方法が効果的です。

このツールとブラウザ開発者ツールの違いは?

このツールはセレクターの詳細度計算を瞬時に確認でき、複数のセレクターを並べて比較できます。開発者ツールより高速で、セレクターの文法検証や詳細度確認に特化しているため、CSS開発時の検証に最適です。

このツールで対応していないセレクターはありますか?

CSS Selectorの標準仕様に基づいており、一般的なセレクターはすべてサポートしています。ただしJavaScriptの独自拡張(XPathなど)には対応していません。