CSS ・ CSSの記法

要素セレクタ

タグ名で直接指定する

p や h2 などの要素名(タグ名)をそのまま書いて、その要素すべてにスタイルを指定するセレクタです。タイプセレクタとも呼ばれます。

書き方
要素名 { }
詳細度
0-0-1(≒1点)
効く範囲
ページ内のその要素すべて
01

サンプルコード

HTML
1<section class="news">
2 <h2>お知らせ</h2>
3</section>
4<aside>
5 <h2>人気の記事</h2>
6</aside>
CSS
1/* △ すべての h2 に効いてしまう */
2h2 {
3 color: #fff;
4 background: #7d5411;
5 padding: 4px 12px;
6}
02

実行結果

ブラウザでの表示装飾したかったのは「お知らせ」だけですが、すべての h2 に効いています
03

解説

要素セレクタは、p・h2・a のように要素名をそのまま書きます。そのページにあるその要素すべてにスタイルが適用されます。

上の例では「お知らせ」の見出しだけを装飾したかったのに、別のセクションにある「人気の記事」の h2 まで同じ見た目になっています。共通のCSSファイルなら、別のページの h2 にも影響します。

このように影響範囲が広すぎるため、要素名への直接指定はできるだけ避けます。ページ全体の基本スタイル(body の文字色、img の max-width など)や、リセットCSSに限って使うのが一般的です。

04

応用例・注意点

使ってよい場面・避けたい場面

場面説明
○ body / htmlページ全体の文字色・書体・背景
○ imgmax-width: 100% などの共通設定
○ リセットCSSブラウザごとの差をなくす初期設定
△ h2 / p / li など特定の場所だけ装飾したいときはクラスを使う
△ div / span役割がないため、クラスで指定する

クラスで範囲を限定する

装飾したい要素だけにクラスを付けると、ほかの h2 に影響しません。

HTML
1<section class="news">
2 <h2 class="news-title">お知らせ</h2>
3</section>
CSS
1.news-title {
2 color: #fff;
3 background: #7d5411;
4}

親のクラスで範囲を絞る

クラスを付けられない場合は、親のクラスと組み合わせて範囲を限定します。

CSS
1.news h2 {
2 color: #7d5411;
3}

注意点

  1. 01要素セレクタで細かくデザインすると、後から追加した部分にも意図しないスタイルが当たってしまいます。
  2. 02要素セレクタは詳細度が低い(≒1点)ため、クラスの指定で簡単に上書きされます。
↑↓ 選択Enter 移動Esc 閉じるCtrl K⌘K で開閉