CSSとはWebページの装飾を行う役割を担っており、文字の大きさや色、配置などを制御し、Web制作においては必須のスキルとなります。
本記事ではCSSの基本的な文法、書き方について解説いたします。
文法について
CSSの記載は、3つの部分を組み合わせて成り立ちます。
p {
color: blue;
}
セレクタ
pはセレクタと呼ばれ、どのHTMLの要素に対してCSSを適用するか、指定をします。
セレクタの後ろには{ }波カッコを記載し、その中にプロパティを記載します。
プロパティ
colorはプロパティと呼ばれ、セレクタに対して何を変更するか、何を装飾するかを指定します。colorの場合は文字の色を変更するプロパティの意味を持ちます。
プロパティの後ろには「:」コロンを付けるのを忘れないようにしましょう。
値
blueは値と呼ばれ、プロパティに対する設定値となります。「color」に対して、「blue」を設定しているので、「p」の「文字色」は「青」といった指定となります。
値はプロパティによって指定できるものが異なり、例えば文字の大きさを指定する「font-size」プロパティでは「blue」は使用できません。なぜなら「font-size」は文字の大きさを指定するプロパティであるため、「blue」は対応していないからです。そのため、プロパティと値はセットで覚えていく必要があります。
プロパティは複数指定することが可能で、それぞれ「;」セミコロンで区切って記載します。プロパティが1つの場合は、セミコロンなしでも動作しますが、付ける場合と付けない場合で分けて記載すると、記述エラーとなった場合にエラーの場所がわからないなど、ハマってしまう原因にもなりかねないので、セミコロンは必ず記載するようにしておいた方が良いです。
セレクタの種類について
セレクタには、タグの名称をそのまま記載する場合と、idで記載するidセレクタ、classで記載するclassセレクタがあります。
タグの名称を記載する場合
<p>今日は</p>
<p>CSSの記載方法について</p>
<p>勉強します</p>
<style>
p {
color: blue
}
</style>
セレクタにはタグ名を記載します。上記の場合はセレクタにpを指定しているため、htmlのpタグすべてに適用されております。
idを記載する場合
idとは
HTMLのタグに指定する属性のことで、具体的には以下のようにHTMLで記載します。
<p id="text">今日は</p>
<p>CSSの記載方法について</p>
<p>勉強します</p>
idで指定する名称(上記の場合はtext)は1つのhtmlファイル中に1つしか使用できず、以下のようには使用できません。
<p id="text">今日は</p>
<p id="text">CSSの記載方法について</p>
<p id="text">勉強します</p>
上記ではエラーとなり、正しく動作しなくなります。
CSSでは以下のように指定します。
<p id="text">今日は</p>
<p>CSSの記載方法について</p>
<p>勉強します</p>
<style>
#text {
color: blue
}
</style>
idを指定した箇所のみ、青色になっていることがわかります。
CSSでidを使用する場合は、#id名で記載する必要があり、上記の場合は「#text」と記載しております。
classを指定する場合
class(クラス)とは
idと同様にHTMLのタグに指定する属性のことで、具体的には以下のようにHTMLで記載します。
<p class="text">今日は</p>
<p>CSSの記載方法について</p>
<p>勉強します</p>
classで指定する名称(上記の場合はtext)は1つのhtmlファイル中に何度でも使用できます。
CSSでは以下のように指定します。
<p class="c-blue">今日は</p>
<p class="c-blue">CSSの記載方法について</p>
<p>勉強します</p>
<style>
.c-blue {
color: blue
}
</style>
classを指定した箇所のみ、青色になっていることがわかります。
CSSでclassを使用する場合は、.class名で記載する必要があり、上記の場合は「.c-blue」と記載しております。
classは同時に複数使用することができ、以下のように記載することも可能です。
<p class="c-blue f-large">今日は</p>
<p class="c-blue">CSSの記載方法について</p>
<p>勉強します</p>
<style>
.c-blue {
color: blue /* 文字の色 青 */
}
.f-large {
font-size: 24px; /* 文字の大きさ 24px(ピクセル) */
font-weight: bold; /* 文字の太さ 太字 */
}
</style>
class「f-large」を追加しております。「f-large」には文字の大きさと太さを指定しており、「今日は」の文言にCSSが反映しています。
このようにclassは同時に指定することも可能で、何度も使用するプロパティはこのように使いまわしをできるように指定することで、きれいにコーディングすることが可能です。
idとclass(クラス)の名称について
仕様上、名称は自由につけても問題ないですが、出来れば統一感や見やすさを重視したいところです。
例えばclassの名称が「abc」とついていた場合、どのような用途か判断できるでしょうか。
作成者であれば、わかるかもしれませんが、別の方が見たときもそうですし、時間が立てば作成者自身も忘れてしまうかもしれません。
idやclass名はできるだけ誰が見てもがわかりやすい名称でつけるのを心掛けましょう。
classには記法と呼ばれるものがあり、ある程度決まった命名規則があります。こちらは別途解説させていただく予定です。
名称は自由にと記載しておりましたが、具体的にはルールがあり、以下は使用できません。
- 名称の中にスペースを入れる
- 名称の先頭が数字
- !や?などの記号は使用不可(‐ハイフンや、_アンダースコアは可)
CSSを記載していて、うまく動作しない場合は、上記に当てはまっていないか確認してみてください。
さいごに
CSSの基本的な文法について解説させていただきました。
CSSで制御する際には、idはあまり使用せず、classで記載することが多いです。
idとclassを組み合わせて記載すると、管理が煩雑になってしまいがちで、想定していない動作が行ってしまうこともあります。
「詳細度」と呼ばれ、設定の優先順位が影響してくることもあり、別途解説する予定です。
CSSは覚えるプロパティも多く、出来ることがかなり広いです。
すべて覚えることは難しいので、よく使用するプロパティから徐々に覚えていきましょう!