LESSON / WP LOAD

ボックスモデルとレイアウトを学ぶ

要素の幅、余白、枠線を決めるボックスモデルと、Flexbox・Gridによる基本レイアウトを学びます。

目安 60分 コース進捗 0 / 17

GOAL

このレッスンでできるようになること

  • ボックスモデルを説明できる
  • コンテンツ幅と余白を設定できる
  • FlexboxとGridを用途に合わせて使える

ブラウザでは、多くのHTML要素が四角い領域として配置されます。この領域の大きさと間隔を理解すると、余白が合わない、横幅がはみ出すといった問題を切り分けられます。

このレッスンでは、ボックスモデルを確認してから、ページのコンテンツ幅と横並びを作ります。

ボックスモデルを理解する

要素の大きさと余白を考えるときは、ボックスモデルの4つの領域を分けて確認します。

content、padding、border、marginの4層で構成されるボックスモデル
content、padding、border、marginの4層で構成されるボックスモデル

要素は内側から、内容、paddingbordermarginで構成されます。paddingは要素の内側、marginは要素の外側の余白です。

*,
*::before,
*::after {
 box-sizing: border-box;
}

border-boxにすると、指定した幅の中にpaddingとborderが含まれます。幅の計算が分かりやすくなるため、最初に全要素へ適用します。

ページのコンテンツ幅を作る

本文を画面いっぱいに広げると、大きな画面で1行が長くなります。最大幅を決め、左右へ自動の余白を付けます。

次の画像は、「ページのコンテンツ幅を作る」で扱うコードや構成をブラウザで表示した結果です。

「ページのコンテンツ幅を作る」で扱うコードや構成の表示結果
「ページのコンテンツ幅を作る」で扱うコードや構成をブラウザで表示した結果
.container {
 width: min(100% - 32px, 1120px);
 margin-inline: auto;
}

画面が狭いときは左右16pxずつの余白を残し、広いときは1120pxより大きくならない指定です。固定幅だけで作らないことがレスポンシブの土台になります。

余白を役割で使い分ける

セクションの内側にはpadding、隣り合う部品の間隔にはgap、要素同士を離す必要がある場合にmarginを使います。すべてをmarginで調整すると、どの要素が間隔を管理しているか分かりにくくなります。

次の図では、「余白を役割で使い分ける」で押さえる違いを左右で比較しています。

「余白を役割で使い分ける」で押さえる違いを左右で比較した図
「余白を役割で使い分ける」で押さえる違いの比較

同じ種類の余白は値をそろえ、8px、16px、24pxのように段階を決めます。デザイン画像との比較も行いやすくなります。

Flexboxで一方向の並びを作る

Flexboxを使うと、関連する要素を横方向または縦方向へ並べられます。

Flexboxを使って3枚のカードを横一列に並べた表示
Flexboxを使って3枚のカードを横一列に並べた表示

Flexboxは、横一列または縦一列を基準に要素を並べるときに使います。ナビゲーション、ボタンの中身、画像と文章の横並びなどに向いています。

.profile {
 display: flex;
 align-items: center;
 gap: 32px;
}

.profile__image,
.profile__body {
 flex: 1;
}

Gridで行と列の配置を作る

行と列の両方をそろえたい場合は、Gridを使うと配置を管理しやすくなります。

CSS Gridを使って幅のそろった3枚のカードを3列に配置した表示
CSS Gridを使って幅のそろった3枚のカードを3列に配置した表示

Gridは、カード一覧のように行と列の両方をそろえる配置に向いています。カード数が変わっても同じ列幅で並べやすくなります。

.card-list {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 24px;
}

はみ出しを確認する

DevToolsで要素を選ぶと、内容、padding、border、marginの大きさを確認できます。横スクロールが出た場合は、固定幅、長い文字列、大きな画像、絶対配置を順番に確認してください。

次の図では、「はみ出しを確認する」の仕組みや関係を確認できます。

「はみ出しを確認する」の仕組みや関係を示す図
「はみ出しを確認する」の仕組みと関係

CHECK POINT

完了条件