CSScolumn-gap プロパティは、要素の段又は列の間の隙間 () の寸法を設定します。

当初は段組みレイアウトの一部でしたが、 column-gap の定義は複数のレイアウト方法を含めるように拡張されました。現在はボックス配置の中で定義され、段組みレイアウト、フレキシブルボックス、グリッドレイアウトで使用されることがあります。

CSS グリッドレイアウトは当初、 grid-column-gap プロパティを定義していました。この接頭辞付きのプロパティは column-gap で置き換えられました。しかし、グリッドで grid-column-gap を実装しており column-gap を実装していないブラウザーに対応するため、上記の第二の対話型サンプルのように、接頭辞付きのプロパティを使用する必要があるでしょう。

構文

/* キーワード値 */
column-gap: normal; 

/* <length> 値 */
column-gap: 3px;
column-gap: 2.5em;

/* <percentage> 値 */
column-gap: 3%;

/* グローバル値 */
column-gap: inherit;
column-gap: initial;
column-gap: unset;

column-gap プロパティは以下に挙げた値の一つで指定します。

normal
段間 (列間) にはブラウザー既定の幅が使われます。段組みレイアウトでは 1em と指定され、他の種類のレイアウトでは 0 になります。
<length>
段間 (列間) の寸法を <length> として定義します。 <length> のプロパティ値は負の数であってはいけません。
<percentage>
段間 (列間) の寸法を <percentage> として定義します。 <percentage> のプロパティ値は負の数であってはいけません。

形式文法

normal | <length-percentage>

where
<length-percentage> = <length> | <percentage>

フレックスレイアウト

これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

HTML

<div id="flexbox">
  <div></div>
  <div></div>
  <div></div>
</div>

CSS

#flexbox {
  display: flex;
  height: 100px;
  column-gap: 20px;
}

#flexbox > div {
  background-color: lime;
  flex: auto;
}

結果

グリッドレイアウト

HTML

<div id="grid">
  <div></div>
  <div></div>
  <div></div>
</div>

CSS

#grid {
  display: grid;
  height: 100px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 100px;
  column-gap: 20px;
}

#grid > div {
  background-color: lime;
}

結果

段組みレイアウト

HTML

<p class="content-box">
  This is some multi-column text with a 40px column
  gap created with the CSS `column-gap` property.
  Don't you think that's fun and exciting? I sure do!
</p>

CSS

.content-box {
  column-count: 3;
  column-gap: 40px;
}

結果

仕様書

仕様書 状態 備考
CSS Box Alignment Module Level 3
column-gap の定義
草案 グリッド及びフレックスボックスに適用
CSS Grid Layout
column-gap の定義
勧告候補 グリッドレイアウトにどう適用されるかを指定
CSS Multi-column Layout Module
column-gap の定義
草案 初回定義。

初期値normal
適用対象段組み要素, フレックスコンテナー, グリッドコンテナー
継承なし
パーセンテージ該当するコンテンツ領域の寸法を参照
メディア視覚
計算値指定通りで、 <length> は絶対長になり、 normal の計算値は段組み要素を除き 0 になる
アニメーションの種類length または percentage, calc();
正規順序構文通り

ブラウザーの対応

フレックスレイアウトでの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome ? Edge ? Firefox 完全対応 63IE 未対応 なしOpera ? Safari 未対応 なしWebView Android ? Chrome Android ? Edge Mobile 未対応 なしFirefox Android 完全対応 63Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明

グリッドレイアウトでの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 66
完全対応 66
完全対応 57
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 29
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 29: this feature is behind the Enable experimental Web Platform features preference. To change preferences in Chrome, visit chrome://flags.
Edge 完全対応 16
完全対応 16
完全対応 16
代替名
代替名 非標準の名前 grid-gap を使用しています。
Firefox 完全対応 61
完全対応 61
完全対応 52
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 40
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 40: this feature is behind the layout.css.grid.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 53
完全対応 53
完全対応 44
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 28
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 28: this feature is behind the Enable experimental Web Platform features preference.
Safari 完全対応 10.1
代替名
完全対応 10.1
代替名
代替名 非標準の名前 grid-gap を使用しています。
WebView Android 完全対応 66
完全対応 66
完全対応 57
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 4.4
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 4.4: this feature is behind the Enable experimental Web Platform features preference.
Chrome Android 完全対応 66
完全対応 66
完全対応 57
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 29
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 29: this feature is behind the Enable experimental Web Platform features preference. To change preferences in Chrome, visit chrome://flags.
Edge Mobile 未対応 なしFirefox Android 完全対応 61
完全対応 61
完全対応 52
代替名
代替名 非標準の名前 grid-gap を使用しています。
完全対応 40
代替名 無効
代替名 非標準の名前 grid-gap を使用しています。
無効 From version 40: this feature is behind the layout.css.grid.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android 完全対応 53
完全対応 53
完全対応 44
代替名
代替名 非標準の名前 grid-gap を使用しています。
Safari iOS 完全対応 10.3
代替名
完全対応 10.3
代替名
代替名 非標準の名前 grid-gap を使用しています。
Samsung Internet Android 完全対応 6.0
代替名
完全対応 6.0
代替名
代替名 非標準の名前 grid-gap を使用しています。

凡例

完全対応  
完全対応
未対応  
未対応
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。
非標準の名前を使用しています。
非標準の名前を使用しています。

段組みレイアウトでの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 50
完全対応 50
完全対応 あり
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
Edge 完全対応 12
完全対応 12
完全対応 12
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
Firefox 完全対応 52
完全対応 52
完全対応 1.5
接頭辞付き 補足
接頭辞付き -moz- のベンダー接頭辞が必要
補足 Before Firefox 3, the default value for the normal keyword was 0 and not 1em.
IE 完全対応 10Opera 完全対応 37
完全対応 37
完全対応 15
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
未対応 11.1 — 15
Safari 完全対応 10
完全対応 10
完全対応 3
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
WebView Android 完全対応 50
完全対応 50
完全対応 あり
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
Chrome Android 完全対応 50
完全対応 50
完全対応 あり
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
Edge Mobile 未対応 なしFirefox Android 完全対応 52
完全対応 52
完全対応 4
接頭辞付き
接頭辞付き -moz- のベンダー接頭辞が必要
Opera Android 完全対応 37
完全対応 37
完全対応 15
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
未対応 11.1 — 14
Safari iOS 完全対応 10
完全対応 10
完全対応 3
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
Samsung Internet Android 完全対応 5.0
完全対応 5.0
完全対応 あり
接頭辞付き
接頭辞付き -webkit- のベンダー接頭辞が必要
<percentage> values
実験的
Chrome 完全対応 66Edge 完全対応 16Firefox 完全対応 61IE 未対応 なしOpera 完全対応 53Safari 未対応 なしWebView Android 完全対応 66Chrome Android 完全対応 66Edge Mobile 未対応 なしFirefox Android 完全対応 61Opera Android 完全対応 53Safari iOS 未対応 なしSamsung Internet Android 未対応 なし
calc() values
実験的
Chrome 完全対応 66Edge 完全対応 16Firefox 完全対応 61IE 未対応 なしOpera 完全対応 53Safari 未対応 なしWebView Android 完全対応 66Chrome Android 完全対応 66Edge Mobile 未対応 なしFirefox Android 完全対応 61Opera Android 完全対応 53Safari iOS 未対応 なしSamsung Internet Android 未対応 なし

凡例

完全対応  
完全対応
未対応  
未対応
実験的。動作が変更される可能性があります。
実験的。動作が変更される可能性があります。
実装ノートを参照してください。
実装ノートを参照してください。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

関連情報