CSSとは?書き方の基本・HTMLとの違いをわかりやすく解説

目次

CSSとは?

CSS(Cascading Style Sheets)とは、Webページの見た目(デザイン)を定義するための言語です。HTMLが「構造と内容」を担当するのに対し、CSSは「色・フォント・レイアウト・余白」などのスタイル(見た目)を担当します。

HTMLが家の「骨格・間取り」なら、CSSは「内装・壁紙・色」です。


HTMLとCSSの関係

HTMLだけでも文章は表示されますが、スタイルのない白黒ページになります。CSSを加えることで初めて見栄えのするWebページが完成します。

<!-- HTML(構造) -->
<h1>こんにちは</h1>
<p>CSSを学んでいます。</p>
/* CSS(スタイル) */
h1 {
  color: #0066cc;
  font-size: 32px;
}
p {
  color: #333;
  line-height: 1.8;
}

CSSの基本構文

セレクター {
  プロパティ: 値;
  プロパティ: 値;
}
要素 説明
セレクター スタイルを適用する対象 h1 p .class #id
プロパティ 変更したいスタイルの種類 color font-size margin
プロパティに設定する値 red 16px auto

CSSの書き方3種類

① 外部スタイルシート(推奨)

CSSを別ファイル(style.css)に書いて、HTMLからリンクする方法です。管理しやすく、複数ページに同じスタイルを適用できます。

<!-- HTMLのheadタグ内 -->
<link rel="stylesheet" href="style.css">
/* style.css */
body {
  font-family: sans-serif;
  color: #333;
}

② 内部スタイルシート

HTMLファイルの <head> 内に <style> タグで書く方法です。1ページのみに適用するスタイルに使います。

<head>
  <style>
    h1 { color: blue; }
  </style>
</head>

③ インラインスタイル

HTML要素に直接 style 属性で書く方法です。特定の要素だけに一時的なスタイルを当てる場合に限定して使います。

<p style="color: red; font-weight: bold;">このテキストは赤い太字</p>

主要なCSSプロパティ

テキスト系

プロパティ 説明
color 文字色 color: #333;
font-size 文字サイズ font-size: 16px;
font-weight 文字の太さ font-weight: bold;
font-family フォントの種類 font-family: sans-serif;
line-height 行間 line-height: 1.8;
text-align テキストの整列 text-align: center;
text-decoration 下線など text-decoration: none;
letter-spacing 文字間隔 letter-spacing: 0.05em;

ボックス(余白・サイズ)系

プロパティ 説明
width 横幅 width: 100%;
height 高さ height: 200px;
padding 内側の余白 padding: 16px;
margin 外側の余白 margin: 0 auto;
border ボーダー(枠線) border: 1px solid #ccc;
border-radius 角の丸み border-radius: 8px;
box-shadow ドロップシャドウ box-shadow: 0 2px 8px rgba(0,0,0,.1);

背景系

プロパティ 説明
background-color 背景色 background-color: #f5f5f5;
background-image 背景画像 background-image: url(bg.jpg);
background-size 背景画像のサイズ background-size: cover;

ボックスモデルとは

すべてのHTML要素は「ボックス(箱)」として扱われます。ボックスモデルを理解することがレイアウト設計の基礎です。

┌─────────────────────────────┐
│          margin(外側余白)         │
│  ┌───────────────────────┐  │
│  │      border(枠線)        │  │
│  │  ┌─────────────────┐  │  │
│  │  │   padding(内側余白)  │  │  │
│  │  │  ┌───────────┐  │  │  │
│  │  │  │  content   │  │  │  │
│  │  │  │  (コンテンツ)  │  │  │  │
│  │  │  └───────────┘  │  │  │
│  │  └─────────────────┘  │  │
│  └───────────────────────┘  │
└─────────────────────────────┘
領域 説明
content テキスト・画像などの実際の内容
padding contentとborderの間の余白
border 枠線
margin 要素の外側の余白(他の要素との距離)

CSSセレクターの基本

セレクター 意味
タグセレクター すべての指定タグ p { }
クラスセレクター class属性が一致する要素 .btn { }
IDセレクター id属性が一致する要素 #header { }
子孫セレクター 指定要素内のすべて nav a { }
直接の子セレクター 直接の子要素のみ ul > li { }
擬似クラス 特定の状態の要素 a:hover { }
/* クラスセレクター */
.card {
  background: white;
  border-radius: 8px;
  padding: 24px;
}

/* 擬似クラス(ホバー時) */
.btn:hover {
  background-color: #004499;
  cursor: pointer;
}

CSSの優先順位(詳細度)

同じ要素に複数のスタイルが当たる場合、詳細度(Specificity)の高いルールが優先されます。

セレクター 詳細度(強さ)
インラインスタイル 最強
IDセレクター #id
クラスセレクター .class
タグセレクター p

まとめ

  • CSSはWebページの見た目(色・フォント・レイアウト・余白)を定義する言語
  • 基本構文は セレクター { プロパティ: 値; }
  • CSSは外部スタイルシートとして管理するのが基本
  • ボックスモデル(content・padding・border・margin)を理解することがレイアウトの基礎
  • セレクターの詳細度(IDセレクター > クラスセレクター > タグセレクター)を把握しておく

CSSの基本を覚えたら、次はレイアウトを組むFlexboxを学んでみましょう。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

大学卒業後、Web制作会社に入社し、コーポレートサイトやECサイト、キャンペーンサイトなど幅広い案件を担当。企画・設計からデザインディレクション、進行管理、納品後の運用改善までトータルで携わる。クライアントの課題整理から戦略立案まで踏み込む提案力と、円滑なチームマネジメントに定評がある。

・Webサイト構築の企画・情報設計
・UI/UX改善提案
・制作進行管理・品質管理
・マーケティング視点での運用改善

Webサイトは“つくって終わり”ではなく、運用しながら成果を伸ばしていくものだと考えています。お客様のビジネスとユーザーの両方にとって価値のあるWebサイトを、戦略から実装まで全力でサポートいたします。

目次