セレクタの書き方|子孫・複数・隣接・間接・直下

HTML&CSS

セレクタの種類

基本的なセレクタは以下の5つです。

  • 要素型セレクタ(a)
  • IDセレクタ(#sample)
  • クラスセレクタ(.class)
  • 属性セレクタ([id=”class”])
  • 全称セレクタ(*)

これらのセレクタは全体を指定する場合に利用されています。

詳しくは以下のリンクで解説しています。

しかし、1つのセレクタの中にある特定のセレクタのみにプロパティと値を指定する場合、そのセレクタ以降の複数のセレクタを指定する等、指定の仕方によっては様々な指定方法があります。

子孫・複数・隣接・直下・間接セレクタ

基本的なセレクタの5つを記号で組み合わせることで、ある1つ、または、限られた条件下に当てはまる複数のセレクタを指定して装飾することもできます。

  • 子孫セレクタ( )※:半角スペースで区切り
  • 複数セレクタ(,)
  • 隣接セレクタ(+)
  • 直下セレクタ(>)
  • 間接セレクタ(~)

それぞれのセレクタについて見て行きましょう。

子孫セレクタ

子孫セレクタとは、

  • 指定された親要素内の子要素の全てに装飾が適応されること

例えば、

.sample span {
	color: red; /* 赤文字 */
}

上記の《sample》が親要素。次いで、《span》が子要素です。

各セレクタの間に半角スペースを書き、繋げることで子孫セレクタが反映されます。

例として、以下のように実行すると…

<div class="sample">
     <span>赤文字</span>
     <div>
          <span>赤文字</span>
          <div>
          <span>赤文字</span>
          </div>
     </div>
</div>

上記のサンプルだと以下のような結果になります。

複数セレクタ

複数セレクタとは、

  • 全く同じ装飾を複数のセレクタで共有し合うこと

例えば、

.sample_1, .sample_2, .sample_3 {
	color: red;
}

上記の《sample_1》と《sample_2》と《sample_3》クラスのそれぞれに同じプロパティと値を反映します。

各セレクタの間にコンマを書き、繋げることで複数セレクタが成り立ちます。

例として、以下のように実行すると…

<div class="sample_1">
	<span>赤文字</span>
</div>
<div class="sample_2">
	<span>赤文字</span>
</div>
<div class="sample_3">
	<span>赤文字</span>
</div>
<div class="sample_etc">
	<span>赤文字・・・違った!</span>
</div>

上記のサンプルだと以下のような結果になります。

隣接セレクタ

隣接セレクタとは、

  • 同じ階層にある要素で指定されたセレクタの次のセレクタに装飾を適応すること

例えば、

.sample + p {
	color: red;
}

上記の《sample》クラスの次の《p》にプロパティと値を反映します。

各セレクタの間にプラスを書き、繋げることで隣接セレクタが成り立ちます。

例として、以下のように実行すると…

<div class="sample">赤文字・・・違った!次だった!</div>
<p>赤文字</p>
<div class="sample">黒文字</div>
<span>ワタシ《span》だよ</span>

上記のサンプルだと以下のような結果になります。

直下セレクタ

直下セレクタとは、

  • 各要素の真下にある要素に装飾を適応すること

例えば、

.sample > span {
	color: red;
}

上記の《sample》クラスの直下にある《span》にプロパティと値を反映します。

各セレクタの間に「>」を書き、繋げることで直下セレクタが成り立ちます。

例として、以下のように実行すると…

<div class="sample">
	<span>赤文字</span>
	<p>黒文字</p>
</div>

上記のサンプルだと以下のような結果になります。

間接セレクタ

間接セレクタとは、

  • 指定した要素以降の同じ階層の全ての要素に装飾を適応すること

例えば、

.sample ~ .hello {
	color: red;
}

上記の《sample》クラス以降にある《hello》クラスの全てにプロパティと値を反映します。

各セレクタの間に「~」を書き、繋げることで間接セレクタが成り立ちます。

例として、以下のように実行すると…

<div class="sample">黒文字</div>
<div class="etc">黒文字</div>
<div class="hello">赤文字</div>
<div class="hello">赤文字</div>
<div class="etc">黒文字</div>

上記のサンプルだと以下のような結果になります。

セレクタのクイズ!指定方法を学ぶ!

セレクタの指定方法を覚えよう!

以下の画像の意味を持つセレクタは?

以下の画像の意味を持つセレクタは?

以下の画像の意味を持つセレクタは?

以下の画像の意味を持つセレクタは?

以下の画像の意味を持つセレクタは?

Your score is

各種セレクタを使ってみよう!

クラスセレクタやIDセレクタを単体で使用する場合は、そのセレクタ一つに指定したプロパティと値が反映することができます。

しかし、より詳細を設定したい場合(限られた条件下でのプロパティと値の適用)には、隣接セレクタや直下セレクタ、間接セレクタが便利です。記号自体は単純なものなので短時間で覚えることができると思います。

HTML&CSS
国内シェアNo.1「エックスサーバー
Word Press初心者向けのサーバーでホームページ・ブログが初めての方でも簡単に始めることができます。また、毎日、自動でバックアップをサーバーに保存してくれる他、昔からあるサーバーなので情報量が多く、トラブルになっても検索して自分で解決することができます。

1. WordPress簡単インストール
2. 毎日、自動バックアップ
3. 手動バックアップ可
4. 無料で復旧可能(14日)
5. 複数のドメイン運用可
6. 基本プランでも大容量
7. 手厚いサポート

迷ったらエックスサーバーにすれば大丈夫。
低コストから成長「カラフルボックス
低コストからホームページ・ブログを始められるサーバーです。サイトの成長に合わせてプランを変更することで高性能なサーバーへ徐々に切り替えることもできます。ホームページとサーバーが一緒に成長でき、低コストながら初心者の方向けの機能も豊富です。かんたん操作のコンパネによって初めての方でも簡単に始めることができます。

1. 低コストから始められる
2. かんたん操作のコンパネ
3. 自動バックアップ(14日)
4. マルウェア・改ざんを防止
5. サーバーは超高速
6. 充実したサポート

お試し運用ならカラフルボックス。
ぜろぶろぐ

コメント

タイトルとURLをコピーしました