第2回: CSSの基本とスタイリングのルール

この回の目標

  • CSSが「見た目を整える言語」だと説明できる
  • classを使ってスタイルを適用できる
  • 文字サイズ・色・余白を自分で調整できる
  • ボタンを作れるようになる

CSSとは何か

HTML = 構造(骨組み)
CSS = 見た目

CSSを使うと・・・

  • 色を変えられる
  • 文字サイズを変えられる
  • 余白を調整できる
  • レイアウトを整えられる

HTMLだけではデザインはできない / CSSでWebサイトらしくなる

CSSファイルを読み込んでみよう

① CSSファイルを作成

css/style.cssを作成する

② HTML内でCSSを読み込む

<link rel="stylesheet" href="style.css">

これを書かなければCSSは効かない

③ セレクタとclass

「どこに適用するか」を指定=セレクタという

タグ指定

p {
  color: #333;
}

→ すべてのpタグに適用

class指定

<p class="highlight">重要なお知らせです</p>
.highlight {
  color: red;
  font-weight: bold;
}

.highlight. は「class」を意味します。

実務ではほとんどclassを使います。

④ 文字を装飾してみよう

p {
  color: #333;          /* 文字色 */
  font-size: 18px;      /* 文字サイズ */
  font-weight: bold;    /* 太さ */
  line-height: 1.8;     /* 行間 */
  letter-spacing: 2px;  /* 文字間 */
}

CSSを使うと文字の見た目を自由に変えられます。

よく使うプロパティ:

  • color → 文字色
  • font-size → 文字サイズ
  • font-weight → 太さ
  • line-height → 行間

⑤ ボックスモデル(超重要)

HTML要素はすべて「箱(ボックス)」です。

箱は4つの層でできています。

  • content(中身)
  • padding(内側の余白)
  • border(枠線)
  • margin(外側の余白)

実際に書いてみよう

.box {
  margin: 20px;
  padding: 20px;
  border: 2px solid #333;
  border-radius: 10px;
  background-color: #f5f5f5;
}
これはボックスの例です。

余白を作る

.box {
  margin: 20px;   /* 外側の余白 */
  padding: 20px;  /* 内側の余白 */
}

境界線をつける

.box {
  border: 2px solid #333;
  border-radius: 10px;
}

border → 枠線
border-radius → 角丸

背景色をつける

.box {
  background-color: #f5f5f5;
}

文字を中央揃えにする

text-align: center;

⑥ ブロック要素とインライン要素

  • ブロック要素:横幅いっぱい(div, p, h1)
  • インライン要素:文字の幅だけ(span, a)
.inline-box {
  display: inline-block;
  background: #ddd;
  padding: 10px;
}
inline-block例

displayを変えると振る舞いが変わります。

⑦ ボタンを作ってみよう

<a href="#" class="button">申し込む</a>
.button {
  display: inline-block;
  width: 200px;
  padding: 12px;
  background-color: #007BFF;
  color: white;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  border-radius: 8px;
}

表示結果

申し込む

hover効果

.button:hover {
  background-color: #0056b3;
}

マウスを乗せると色が変わります。

疑似要素 after

.button::after {
  content: " →";
}

テキストの後ろに矢印を追加できます。

⑧ CSSプロパティの順番(視覚順)

.example {
  display: block;

  width: 300px;
  margin: 20px;
  padding: 20px;

  border: 1px solid #000;
  border-radius: 8px;

  background-color: #eee;

  color: #333;
  font-size: 16px;
}

レイアウト → 余白 → 枠線 → 背景 → 文字 の順で書くと見やすくなります。

⑨ CSS設計(BEM入門)

<div class="card">
  <h3 class="card__title">カードタイトル</h3>
  <p class="card__text">カードの文章です。</p>
</div>
.card {}
.card__title {}
.card__text {}
.card--large {}
  • Block → card
  • Element → card__title
  • Modifier → card--large

ミニ課題

① 文字サイズと色を自分好みに変更する

② boxクラスを作り、余白を調整する

③ ボタンを1つ追加する

④ hoverの色を変えてみる

この回のまとめ

  • CSSは見た目を整える言語
  • classを使って自由に装飾できる
  • HTMLは箱(ボックス)でできている
  • ボタンはaタグで作れる
  • CSSは整理して書くことが大事