カテゴリ: CSS 更新日: 2026/01/05

CSSグリッドレイアウト完全入門!初心者でもわかるgapプロパティで行と列の間隔を設定する方法

gapプロパティで行と列の間隔を設定する方法
gapプロパティで行と列の間隔を設定する方法

先生と生徒の会話形式で理解しよう

生徒

「CSSのグリッドレイアウトを使って並べた箱同士が、ぎゅうぎゅうにくっついてしまいます。間をあける方法はありますか?」

先生

「ありますよ。CSSグリッドレイアウトでは、gapというプロパティを使うと、行と列の間隔を簡単にあけられます。」

生徒

「行と列の間隔って、そもそも何ですか?」

先生

「画面をマス目のノートだと考えると、とても分かりやすいですよ。では、基本から順番に見ていきましょう。」

1. CSSグリッドレイアウトとgapプロパティの基本

1. CSSグリッドレイアウトとgapプロパティの基本
1. CSSグリッドレイアウトとgapプロパティの基本

CSSグリッドレイアウトとは、Webページの中身を表のような「行」と「列」で整理して配置できるCSSのレイアウト方法です。 プログラミング未経験の方は、ノートに線を引いてマス目を作り、その中に文字や絵を書くイメージを思い浮かべてください。 このマス目の横方向が「列」、縦方向が「行」です。

gapプロパティは、そのマス目とマス目の「すき間」を調整するためのCSSです。 たとえば、写真アルバムで写真同士がぴったりくっついているより、少し間が空いていた方が見やすいですよね。 gapは、まさにその「見やすくするための余白」を一気に設定できる便利なプロパティです。

CSSグリッド、gap、行、列、間隔、レイアウトといったキーワードは、 Web制作やHTML・CSS学習の初期段階でとてもよく検索されます。 初心者の方でも理解できるよう、ここでは難しい数式や専門用語は使わずに説明していきます。

2. gapプロパティで間隔をまとめて設定する考え方

2. gapプロパティで間隔をまとめて設定する考え方
2. gapプロパティで間隔をまとめて設定する考え方

gapプロパティの最大の特徴は、「行と列の間隔をまとめて指定できる」点です。 以前は、行の間、列の間をそれぞれ別々に設定する必要がありましたが、 gapを使えば一行で設定が完了します。

例えば、学校の机を並べる場面を想像してください。 縦の通路も横の通路も、同じ広さで空けたい場合、 先生が「全部同じ間隔で並べてください」と指示した方が楽ですよね。 gapは、その「全部同じ間隔で」という指示をCSSで表現したものです。

数字の単位としてよく使われるのがpxです。 pxは「ピクセル」と読み、画面の小さな点の集まりだと考えると分かりやすいです。 gap: 20px; と書くと、行と列の間が20ピクセルずつ空きます。

3. 実際にgapを使ったCSSグリッドのサンプル

3. 実際にgapを使ったCSSグリッドのサンプル
3. 実際にgapを使ったCSSグリッドのサンプル

ここでは、CSSグリッドレイアウトとgapプロパティを使った、とてもシンプルな例を見てみましょう。 四角い箱を並べて、その間にすき間を作る例です。 コードはそのままコピーしても使える形になっています。


<style>
	.grid-box {
	    display: grid;
	    grid-template-columns: 1fr 1fr 1fr;
	    gap: 20px;
	}

	.grid-item {
	    background-color: #0d6efd;
	    color: white;
	    padding: 20px;
	    text-align: center;
	}
</style>

<div class="grid-box">
	<div class="grid-item">1</div>
	<div class="grid-item">2</div>
	<div class="grid-item">3</div>
	<div class="grid-item">4</div>
	<div class="grid-item">5</div>
	<div class="grid-item">6</div>
</div>
ブラウザ表示

この例では、grid-template-columnsで横に三つの列を作り、 gapで箱と箱の間隔をまとめて指定しています。 gapがあるおかげで、要素同士が重ならず、見た目もすっきりします。

4. 行と列で間隔を変えたいときの考え方

4. 行と列で間隔を変えたいときの考え方
4. 行と列で間隔を変えたいときの考え方

gapは、行と列を同じ間隔にするだけでなく、 縦と横で違う間隔を指定することもできます。 これは「縦のすき間は広め、横は少なめ」といったレイアウトを作りたいときに便利です。

使い方はとてもシンプルで、数字を二つ並べて書きます。 最初の数字が行の間隔、次が列の間隔です。 料理で例えると、縦の盛り付け間隔と横の盛り付け間隔を別々に決めるような感覚です。

CSSグリッドレイアウト、gapプロパティ、行間、列間、余白調整といった言葉は、 初心者がつまずきやすいポイントですが、 「マス目のすき間を決める」と覚えておくと理解しやすくなります。

カテゴリの一覧へ
新着記事
New1
Bootstrap
Bootstrapのガターをマスター!g-0〜g-5とgx/gyの使い分けコツ
New2
CSS
CSSグリッド完全解説!auto-fitとauto-fillの違いとレスポンシブ設計での正しい使い分け
New3
Bootstrap
Bootstrapブレークポイントの設計図!sm/md/lg/xlの選び方と実務基準
New4
CSS
CSSグリッド入門!grid-areaで名前付き領域を使ったレイアウトの作り方をやさしく解説
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSグリッドレイアウト完全入門!display: grid の基本と使い方を初心者向けにやさしく解説
No.2
Java&Spring記事人気No2
CSS
CSSでテキストの折り返しを完全解説!初心者でもわかる基本と注意点
No.3
Java&Spring記事人気No3
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.4
Java&Spring記事人気No4
CSS
CSSの複数セレクタ指定を完全解説!初心者でもわかるカンマ区切りの使い方
No.5
Java&Spring記事人気No5
CSS
CSSのフレックスボックスで要素を左右に寄せる方法を完全ガイド!初心者でもわかるjustify-content: space-between
No.6
Java&Spring記事人気No6
CSS
CSSフレックスボックス完全解説|Gridとの違いとFlexboxが得意なレイアウトパターンを初心者向けに理解しよう
No.7
Java&Spring記事人気No7
CSS
CSS Flexbox入門!display: flexの基本と適用方法を初心者向けに解説
No.8
Java&Spring記事人気No8
CSS
CSSの斜体文字を完全解説!初心者でもわかるfont-style: italicの使い方