CSS辞書

gap

スペーシング・サイズ

FlexboxやGridで要素間の間隔を指定するプロパティです。row-gap(行間)とcolumn-gap(列間)を一括で指定でき、marginより直感的で管理しやすいです。レスポンシブなレイアウトの余白調整に最適です。

構文

Syntax
gap: <length> | <percentage>

Tailwindでは

gap-2gap: 8px
gap-4gap: 16px

一般形: gap-{n}(n×4px。gap-4 = 16px)

任意値: gap-[18px]

行・列を別々に指定するときは gap-x-{n} / gap-y-{n}。

インタラクティブデモ

Try it

コントロール

16px
0px100px

プレビュー

1
2
3

生成されたCSS

.element { gap: 16px; }

コード例

1

.flex-container { display: flex; gap: 1rem; }
実行結果
Item 1
Item 2
Item 3

Flexアイテム間に1remの間隔

2

.grid-container { display: grid; gap: 2rem 1rem; }
実行結果
1
2
3
4

行間2rem、列間1remの間隔

3

gap: clamp(1rem, 3vw, 2rem);
実行結果
clamp(1rem, 3vw, 2rem)
レスポンシブ間隔

レスポンシブな間隔設定

💡 TIPS

marginと違って最初と最後の要素には適用されない。レスポンシブデザインに最適。

🤖 AIがよく間違えるポイント

AIは古い知識でmargin + :last-child打ち消しや負マージンハックを提案することがありますが、flexのgapも2021年から全ブラウザ対応済みで、現在はgap一択です。gapは「アイテム間」だけに効き、外周には効かない(そこはpadding)という役割分担も明確に伝わります。

💬 AIへの頼み方

このmarginと:last-childで管理している要素間の余白をgapに置き換えてリファクタリングして

そのままAIチャットに貼り付けて使える依頼文の例です。ページ上部の「AI用にコピー」でこのページ全体をコンテキストとして渡せます。

関連プロパティ

このプロパティを使ったUIレシピ

ブラウザサポート

Baseline 広く利用可能
Chrome
57+
Firefox
52+
Safari
10.1+
Edge
16+