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を追加する毎にバラバラになるというか、後から見た時に分かりづらくなりがちだった。
ネスト指定できるようになると「スライダー用のセレクタ」「記事部分のセレクタ」等、ブロックごとにまとめられるので保守性が上がると思われる。
関連記事
-
-
CSSでfloatやmargin&widthは使わずにブロック要素の中央寄せ・右寄せする方法
CSSでブロック要素を中央寄せする場合はwidth指定しつつ「margin:0 ...
-
-
videoタグで表示させた動画をjQuery&CSSでフローティングビデオ対応させる方法
Web上の動画をFloatingVideo対応したいという要望を受けた。ページ上 ...
-
-
「slick」でarrows(次に進む・前に戻るボタン)を設定しても表示されない場合の対応方法
「slick」で画像スライダーを表示する際にarrows(次に進む・前に戻るボタ ...
-
-
jQueryとCSSで指定したテキストに対してラインマーカーを引く方法
サイト内で強調したいテキストに対して蛍光ペンでマーカーを引くようなアニメーション ...
-
-
スクロールしても追尾する要素をプラグイン等は利用せずCSSのみで作成する方法
コンテンツ内をスクロールしても追尾してくる要素を作成したかった。以前にMeeka ...