--- title: gap (grid-gap) slug: Web/CSS/gap tags: - CSS - CSS グリッドレイアウト - CSS フレックスボックスレイアウト - CSS プロパティ - CSS ボックス配置 - CSS 段組みレイアウト - Reference - gap - リファレンス translation_of: Web/CSS/gap ---
gap
は CSS のプロパティで、行や列の間のすき間 ({{glossary("gutters", "溝")}}) を定義します。これは {{CSSxRef("row-gap")}} および {{CSSxRef("column-gap")}} の一括指定です。
CSS グリッドレイアウトでは、当初は grid-gap
プロパティを定義していました。この接頭辞付きのプロパティは gap
に置き換えられました。しかし、グリッドで grid-gap
を実装していて gap
を実装していないブラウザーに対応するため、上記のデモにあるように、接頭辞付きのプロパティを使用する必要があるでしょう。
/* 単一の <length> 値 */ gap: 20px; gap: 1em; gap: 3vmin; gap: 0.5cm; /* 単一の <percentage> 値 */ gap: 16%; gap: 100%; /* 二つの <length> 値 */ gap: 20px 10px; gap: 1em 0.5em; gap: 3vmin 2vmax; gap: 0.5cm 2mm; /* 一つ又は二つの <percentage> 値 */ gap: 16% 100%; gap: 21px 82%; /* calc() 値 */ gap: calc(10% + 20px); gap: calc(20px + 10%) calc(10% - 5px); /* グローバル値 */ gap: inherit; gap: initial; gap: unset;
このプロパティは <'row-gap'>
の値と、任意で <'column-gap'>
の値を続けて指定します。 <'column-gap'>
が省略された場合、 <'row-gap'>
と同じ値が設定されます。
<'row-gap'>
及び <'column-gap'>
はそれぞれ、 <length>
又は <percentage>
で指定します。
<div id="flexbox"> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div>
#flexbox { display: flex; flex-wrap: wrap; width: 300px; gap: 20px 5px; } #flexbox > div { border: 1px solid green; background-color: lime; flex: 1 1 auto; width: 100px; height: 50px; }
{{EmbedLiveSample("Flex_layout", "auto", "120px")}}
<div id="grid"> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div>
#grid { grid-gap: 20px 5px; }
#grid { display: grid; height: 200px; grid-template: repeat(3, 1fr) / repeat(3, 1fr); gap: 20px 5px; } #grid > div { border: 1px solid green; background-color: lime; }
{{EmbedLiveSample("Grid_layout", "auto", "120px")}}
<p class="content-box"> This is some multi-column text with a 40px column gap created with the CSS <code>gap</code> property. Don't you think that's fun and exciting? I sure do! </p>
.content-box { column-count: 3; gap: 40px; }
{{EmbedLiveSample("Multi-column_layout", "auto", "120px")}}
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName("CSS3 Box Alignment", "#propdef-gap", "gap")}} | {{Spec2("CSS3 Box Alignment")}} | 初回定義 |
{{CSSInfo}}
{{Compat("css.properties.gap.flex_context")}}
{{Compat("css.properties.gap.grid_context")}}
{{Compat("css.properties.gap.multicol_context")}}