CSSで親子関連のセレクターをネスト(入れ子)で指定する方法
CSSで親子関連のセレクターを指定する場合「.parent .child{}」のように指定していたが、ネスト(入れ子)で指定できるようになったらしい。ネストで指定する方が明らかに保守性が上がると思われるので指定方法を覚えておきたい。以下にソースコード及びサンプルをメモ。
リファレンス
https://developer.mozilla.org/ja/docs/Web/CSS/CSS_nesting/Using_CSS_nesting
サンプル
https://taitan916.info/sample/CSS_nesting/
ソースコード
<style> .parent{ color: #fff; background: #f00; .child{ background: #0f0; .grandchild{ background: #00f; } } } </style> <div class="parent"> 親要素 <div class="child"> 子要素 <div class="grandchild"> 孫要素 </div> </div> </div>
その他
ブラウザサポート状況
こちらのページを見る限り主要ブラウザでは問題無くサポートされている模様。
ちなみに2023年12月以降に主要ブラウザで動作するようになったとのことで割と最近の話になる。
所感
今までセレクター指定だとCSSを追加する毎にバラバラになるというか、後から見た時に分かりづらくなりがちだった。
ネスト指定できるようになると「スライダー用のセレクタ」「記事部分のセレクタ」等、ブロックごとにまとめられるので保守性が上がると思われる。
関連記事
-
-
特定のID / Classを持つタグの親要素に対してCSSを割り当てる方法
特定のID / Classを持つタグの親要素に対してCSSを割り当てたい。また、 ...
-
-
CSSで一つの要素に対して複数の背景色を指定する方法
1つのdiv要素に対して複数の背景色をつけたかった。background-col ...
-
-
CSSで1つの要素に複数classを設定して画像を入れ替える方法
メニューリンクで通常時の画像、マウスオーバー時の画像、アクティブ時の画像をそれぞ ...
-
-
CSSとJavaScriptでテキストのコピー防止
あるサイトで文言の意味が分からずGoogleで検索する為にコピペしようとするも、 ...
-
-
YouTubeの埋め込み動画をjQuery&CSSでフローティングビデオ対応させる方法
以前にvideoタグで表示させた動画をjQuery&CSSでフローティン ...