2023.02.13

HTML・CSS

隣接セレクタ、間接セレクタ、直下セレクタについて

隣接セレクタ、間接セレクタ、直下セレクタの動作を確認します。
デモページはこちら

隣接セレクタ間接セレクタ直下セレクタ
A + BA ~ BA > B
同一階層同一階層直下階層
直後のみ直後以降複数直下複数

隣接セレクタ「+(プラス)」は同一階層の直後の要素のみに適用されます。

<h1 class="ttl">見出し</h1>
<div class="txt">ダミーテキスト(適用)</div>
<div class="txt">ダミーテキスト</div>
h1 + div {
  color: #ff0000;
}

間接セレクタ「~(チルダ)」は同一階層の直後以降、複数の要素に適用されます。

<h2 class="ttl">見出し</h2>
<div class="txt">ダミーテキスト(適用)</div>
<div class="txt">ダミーテキスト(適用)</div>
h2 ~ div {
  color: #ff0000;
}

離れている特定の同一階層の要素に対し、クラス名を指定して間接セレクタを適用することもできます。

<h3 class="ttl">見出し</h3>
<div class="txt">ダミーテキスト</div>
<div class="subtxt">ダミーテキスト(適用)</div>
h3 ~ .subtxt {
  color: #ff0000;
}

直下セレクタ「>」は直下階層の複数の要素に適用されます。適用されるのは直下の階層のみで、階層が深くなると適用されません。

<ul class="list">
  <li class="txt">ダミーテキスト</li>
  <li class="txt">ダミーテキスト(適用)
    <ul class="sublist">
      <li class="txt">ダミーテキスト</li>
      <li class="txt">ダミーテキスト</li>
    </ul>
  </li>
  <li class="txt">ダミーテキスト(適用)</li>
</ul>
.list > li:not(:first-child) {
  margin-top: 20px;
}

関連記事

2024.09.05

HTML・CSS

radial-gradientで作る水玉模様

background-imageプロパティのradial-gradientで水玉模様を作成します。わかりやすいように背景を繰り返し前と繰り返し後で比較します。デ…

2022.05.11

HTML・CSS

CSSのcalc記述時の注意点

CSSのcalcはCSS3で追加された関数です。calc記述時は以下の点に注意が必要です。 加算・減算の演算子の左右には半角スペースが必要 乗算は掛けられる方(…

2024.08.19

HTML・CSS

縦書き文字の配置について

縦書きの文字を写真の左上・左中・左下・右上・右中・右下に配置します。デモページはこちら 以下のhtml構造で確認します。 CSSはpositionとtransf…

2020.07.05

HTML・CSS

rubyタグでテキストにルビ(ふりがな)を振る

rubyタグとrtタグの二つを使ってテキストにルビ(ふりがな)を振ります。rtタグはふりがな、rubyタグはテキストとふりがな(rtタグを含む)の両方を囲います…

2020.10.19

HTML・CSS

コーディング時のIE11のバグ

コーディング時に発生したIE11のバグのまとめです。主にflexboxで発生します。 ■ display: flexの要素にmin-heightを指定した場合、…

上に戻る