home
twitter
ページトップへ
目次
  • そもそもCSSの「セレクター」とは何か?
  • 「セレクターリスト」とは何か?
  • 実際に使ってみる!
  • 「,」カンマを打った後は、改行するべし!
  • 「セレクターリスト」を使うメリット!
  • コードが読みやすくなる
  • コードの量が減らせる
  • コードのメンテナンス性が上がる
  • 「セレクターリスト」を使う上での注意点
  • 「セレクターリスト」の中に1つでも無効なものがあると他の全てにスタイルが当たらなくなる。
  • 解決策!「:is()」「:where()」を使えばOK!
  • 参考リンク。
  • あわせて読みたい記事。
  • まとめ
about
categories
page
archive
皇帝ペンギンブログ

2024/02/13 (更新日:2024/07/11)

【CSS】「セレクターリスト」について解説!【注意点についても】

Categories > CSSのセレクター編
こんばんは!初めましての方は初めまして!
しゅーた(@chibasyuta)です!

この記事ではCSSの「セレクターリスト」について解説します。

「セレクターリスト」って何??

このような方が対象です。

この記事の内容!

  • そもそもセレクターとは何か?
  • 「セレクターリスト」とは何か?
  • 「セレクターリスト」を使うメリット
  • 「セレクターリスト」を使う上での注意点
また、下の動画でも「セレクターリスト」について詳しく解説しているので、一緒に実際にコードを書きながら学びたい方はこちらをどうぞ!

それでは内容へ入ります!

目次
非表示
  • そもそもCSSの「セレクター」とは何か?
  • 「セレクターリスト」とは何か?
  • 実際に使ってみる!
  • 「,」カンマを打った後は、改行するべし!
  • 「セレクターリスト」を使うメリット!
  • コードが読みやすくなる
  • コードの量が減らせる
  • コードのメンテナンス性が上がる
  • 「セレクターリスト」を使う上での注意点
  • 「セレクターリスト」の中に1つでも無効なものがあると他の全てにスタイルが当たらなくなる。
  • 解決策!「:is()」「:where()」を使えばOK!
  • 参考リンク。
  • あわせて読みたい記事。
  • まとめ

そもそもCSSの「セレクター」とは何か?

セレクターの箇所を図示

CSSの「セレクター」とは「どの要素にスタイルを当てるか?」を指定する箇所のことを指します。

ふむふむ。

「セレクターリスト」とは何か?

「セレクターリスト」とは何か?

「セレクターリスト」とは、同じスタイルを当てる「複数のセレクター」を「1まとめにするセレクターの書き方」のことです。

実際に使ってみる!

h1,
h2,
h3 {
    font-weight: bold;
}

セレクター同士を「,」カンマ区切りで書いてあげればOKです!

読みやすいので「,」カンマを打った後は、改行することが多いです。

上の例だと、「h1」「h2」「h3」の全てに「font-weight: bold;」が適用されます。

これは便利だね!

「,」カンマを打った後は、改行するべし!

h1, h2[title], h3.hoge {
    font-weight: bold;
}

h1,
h3[title],
h3.hoge {
    font-weight: bold;
}

「,」カンマを打った後は改行した方がコードが読みやすいと思います。

Google先生も改行を推奨している!

また、「Google社」が公開している「スタイルガイド」を見てみると、「,」の後は改行することを推奨しています。

https://google.github.io/styleguide/htmlcssguide.html#Selector_and_Declaration_Separation

スタイルガイドというのは「こーゆールールでコーディングしようね!」というお約束のようなものです。

複数人でコードを書く際には、共通のルールを用意すると、コードが書きやすくなるし読みやすくなるので便利です。
ルールを作る際には、メガテックなどのルールを参考にしてみると良さそうだね!

「セレクターリスト」を使うメリット!

「セレクターリスト」を使うメリットについても記述しておこうと思います!

「セレクターリスト」を使うメリット!

  • コードが読みやすくなる
  • コードの量が減らせる
  • コードのメンテナンス性が上がる

これらがあるのかな、と思います。

コードが読みやすくなる

セレクターリストを使うことで、同じスタイルが当たる箇所をまとることができるので「この要素とこの要素には同じスタイルが当たるんだな」ということが、コードを見比べなくても分かるので、コードが読みやすくなると思います。これは大きなメリットです。

自分一人でコードを書いていても、1週間後に見返すと、それはもう他人の書いたコードと化すので、読みやすいコードを書くことは大事だと僕は思います!

コードの量が減らせる

h1 {
    font-weight: bold;
    font-size: 30px;
    color: pink;
}
h2 {
    font-weight: bold;
    font-size: 30px;
    color: pink;
}
h3 {
    font-weight: bold;
    font-size: 30px;
    color: pink;
}
h1,
h2,
h3 {
    font-weight: bold;
    font-size: 30px;
    color: pink;
}

「セレクターリスト」を使うことで、単純にコードの量が減らせます。

使える場面ではどんどん使っていきましょう!!

コードのメンテナンス性が上がる

セレクターリストを使うことで、コードのメンテナンス性が上がります。

コードをまとめることができれば、その1箇所を変えれば、変更はそのスタイルが当たる全ての要素に適用されます。

逆に、コードをまとめないで、同じようなコードを複数の箇所で書いていた場合、それら全てに変更を加える必要がでてきます。

何行も何行もコードを書き換えるのはマルチカーソルを使ったとしても億劫ですし、ミスが起きてしまうかもしれません。

なので、できるだけセレクターリストを使っていきましょう!!

「セレクターリスト」を使う上での注意点

非常に便利な「セレクターリスト」ですが、使用上の注意点もあります。

それについても記述しておきますね。解決策もセットで!

「セレクターリスト」の中に1つでも無効なものがあると他の全てにスタイルが当たらなくなる。

h2,
h3,
input:blank {
    border: 2px solid pink;
}
h2 {
    border: 2px solid pink;
}
h3 {
    border: 2px solid pink;
}
input:blank {
    border: 2px solid pink;
}

一見同じように見える上の2つは等価ではありません。

「,」カンマで区切ったセレクターの中に、1つでも無効なものがあると、セレクターリストに含まれる他の要素にもスタイルが当たらなくなるので注意が必要です。

セレクターリストを使わずに個別に書いている場合は、このようなことはおきないので、その点が上の2つでは違いますね。

セレクターリストの中にWebブラウザにとって解釈できないセレクターが1つでも含まれていたら、そのセレクターリスト自体が無効となります。

「:blank」の詳しい解説は今回しないのですが「:blank」はサポートされているWebブラウザが少ないです。「:blank」のようなWebブラウザによってはサポートされていないものを使う際は注意してください。

解決策!「:is()」「:where()」を使えばOK!

:is(
    h2,
    h3,
    input:blank
) {
    border: 2px solid pink;
}

:where(
    h2,
    h3,
    input:blank ) {
    border: 2px solid pink;
}

「:is()」もしくは「:where()」を使えばこの問題は解決します。

「:is()」と「:where()」の中にセレクターリストを入れると、そのセレクターリストの中で1つが無効なセレクターであっても、他のセレクターにはしっかりスタイルが当たるようになります。

なるほど!怪しいものを使う際はこれを使えばいいんだね!

参考リンク。

仕様書。
https://drafts.csswg.org/selectors/#grouping

MDN。
https://developer.mozilla.org/ja/docs/Web/CSS/Selector_list

あわせて読みたい記事。

大学生が夏休みにweb制作で13万円稼ぐまでにやったこと。【経験談】

関連記事

まとめ

CSSの「セレクター」とは「どの要素にスタイルを当てるか?」を指定する箇所のことを指す。

「セレクターリスト」とは、同じスタイルを当てる「複数のセレクター」を「1まとめにするセレクターの書き方」のこと。

セレクター同士を「,」カンマ区切りで書いてあげればOK!

「セレクターリスト」を使うメリットは下記の通り。

「セレクターリスト」を使うメリット!

  • コードが読みやすくなる
  • コードの量が減らせる
  • コードのメンテナンス性が上がる

ですが、セレクターリストの中にWebブラウザにとって解釈できないセレクターが1つでも含まれていたら、そのセレクターリスト自体が無効となる。

それに対しては、「:is()」「:where()」を使う、という解決策がある。

こんな感じですかね!

この記事が気に入った方は僕のTwitter(@chibasyuta)のフォローもお願いします!

また、下の動画でも「セレクターリスト」について詳しく解説しているので、一緒に実際にコードを書きながら学びたい方はこちらをどうぞ!

それではこんな感じでこの記事を終わります!

ではまた!

自分のロゴ!

皇帝ペンギン

全力で、書きます。
少しでもお役に立てたら幸いです。
楽しんで読んで下さい 。-_- 。
よろしくお願いします!

x(旧twitter) youtube
Categories
  • トップへ
  • ITパスポート (1)
  • programming (168)
    • CSSのアニメーション編 (26)
    • CSSのグリッドレイアウト編 (1)
    • CSSのセレクター編 (58)
    • CSSのフレックスボックス編 (1)
    • CSSのメディアクエリー編 (7)
    • CSSの基本編 (34)
    • HTMLのformタグ編 (1)
    • HTMLの基本編 (3)
    • JavaScriptの入門編 (30)
    • JavaScriptの基本編 (5)
    • Web制作をする環境を整えよう! (1)
  • Uncategorized (23)
  • VScode (1)
  • おすすめ商品! (1)
  • クラロワ (2)
  • マーケティング (17)
  • 大学生活 (7)
  • 心理学 (9)
  • 映画 (1)
  • 法学 (4)
  • 経済学 (4)
  • 読書 (7)
Pages
  • プライバシーポリシー
  • 免責事項
  • プロフィール
Archive
  • 2025年3月 (1)
  • 2025年1月 (9)
  • 2024年12月 (13)
  • 2024年11月 (5)
  • 2024年10月 (10)
  • 2024年9月 (15)
  • 2024年8月 (5)
  • 2024年7月 (6)
  • 2024年6月 (5)
  • 2024年5月 (10)
  • 2024年4月 (24)
  • 2024年3月 (11)
  • 2024年2月 (6)
  • 2024年1月 (10)
  • 2023年12月 (4)
  • 2023年11月 (3)
  • 2023年10月 (2)
  • 2023年9月 (3)
  • 2023年8月 (6)
  • 2023年7月 (3)
  • 2023年6月 (8)
  • 2023年5月 (2)
  • 2023年3月 (1)
  • 2023年2月 (1)
  • 2022年10月 (2)
  • 2022年9月 (2)
  • 2022年8月 (8)
  • 2022年7月 (2)
  • 2022年6月 (6)
  • 2022年5月 (9)
  • 2022年4月 (2)
  • 2022年2月 (4)
  • 2021年12月 (1)
  • 2021年11月 (4)
  • 2021年10月 (8)
  • 2021年9月 (14)
  • 2021年8月 (6)
  • 2021年6月 (1)
  • 2021年5月 (2)
  • 2021年4月 (1)
  • 2021年3月 (1)
  • 2021年2月 (2)
  • 2020年10月 (1)
  • 2020年7月 (1)
  • 2020年4月 (1)
  • 2020年1月 (1)
  • 2019年12月 (2)
© Copyright Syuta Chiba, 2019 All Rights Reserved.