フロントエンドの用語一覧へ
このページの目次

セレクタとは?

読み方:セレクタ

最終更新:2026/08/18

3秒でわかる

HTMLの中から対象の要素を選び出す記法。CSSの装飾もJavaScriptからの取得も、同じ書式で対象を絞り込めます。

もう少し詳しく

どういうものか

セレクタは、HTML文書の中から特定の要素を選び出すための記法です。p のようなタグ名、.card のようなクラス#header のようなid、[type="text"] のような属性、疑似クラスによる状態や位置の指定を、組み合わせて書きます。CSSでは装飾の対象を、JavaScriptでは操作の対象を、同じ書式で指定できます。

なぜ必要か

HTMLは要素が入れ子になった木構造です。その中から「カードの中の見出しだけ」を狙って選ぶ手段が無いと、装飾も操作もできません。セレクタは、構造の中の位置と特徴を条件式として書ける仕組みで、HTML側に印を足さなくても対象を絞り込めます。

具体例

.card h2 { font-size: 1.25rem; } /* .card の子孫の h2 */ .card > p { margin: 0; } /* 直下の p だけ */ a[target="_blank"] { text-decoration: underline; } li:nth-child(odd) { background: #f6f6f6; } button:disabled { opacity: 0.5; }
// 同じ書式で JavaScript からも取得できる const first = document.querySelector(".card h2"); const all = document.querySelectorAll("input[required]"); all.forEach((el) => el.<a href="/glossary/classlist" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">classList</a>.add("mark"));

つまずきやすいところ

意図した装飾が効かない原因の多くは詳細度です。id指定はクラス指定より強く、クラス指定はタグ指定より強いため、あとから書いたルールでも負けることがあります。勝てないからと !important を足すと、次に直す人がさらに強い指定を足す悪循環になります。詳細度をそろえ、クラス中心で書くのが現実的です。

もうひとつは querySelectorAll戻り値です。配列に似ていますがNodeListなので、mapfilter はそのままでは使えません。配列として扱いたいときは Array.from で変換します。

覚え方

先頭の記号で読み分けられます。ドットはクラス、シャープはid、記号なしはタグ、角かっこは属性、コロン1つは状態です。


書き方に迷ったら、開発者ツールで要素を右クリックしてセレクタをコピーできます。ただし自動生成されるものは長く壊れやすいため、そのまま使わず意味のあるクラス名へ置き換えます。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地セレクタフロントエンド

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

このコースが入っている学習分野

HTML・CSSコースの全編を見る