- 相关CSS属性: {{cssxref("row-gap")}}, {{cssxref("gap")}}
- Grid 布局指南: Basic concepts of grid layout - Gutters
- Multi-column 布局指南: Styling Columns
--- title: column-gap slug: Web/CSS/column-gap translation_of: Web/CSS/column-gap ---
column-gap
该 CSS 属性用来设置元素列之间的间隔 ({{glossary("gutters","gutter")}}) 大小。
column-gap
一开始是 Multi-column 布局 下的特有属性,后来在其他布局中也使用这个属性。如 Box Alignment 中的表述,该属性已经在Multi-column(多列布局)、Flexible Box(弹性盒子)以及 Grid layouts(网格布局)中使用。
CSS Grid Layout 起初是用 grid-gap
属性来定义的,目前逐渐被 gap
替代。但是,为了兼容那些不支持 gap
属性的浏览器,你需要像上面的例子一样使用带有前缀的属性。
/* Keyword value */
column-gap: normal;
/* <length> values */
column-gap: 3px;
column-gap: 2.5em;
/* <percentage> value */
column-gap: 3%;
/* Global values */
column-gap: inherit;
column-gap: initial;
column-gap: unset;
column-gap
属性有以下值来表示。
normal
多列布局
时默认间隔为1em,其他类型布局默认间隔为 0。{{csssyntax}}
{{SeeCompatTable}}
<div id="flexbox"> <div></div> <div></div> <div></div> </div>
#flexbox { display: flex; height: 100px; column-gap: 20px; } #flexbox > div { background-color: lime; flex: auto; }
{{EmbedLiveSample('Flex布局', "auto", "120px")}}
<div id="grid"> <div></div> <div></div> <div></div> </div>
#grid { grid-column-gap: 20px; }
#grid { display: grid; height: 100px; grid-template-columns: repeat(3, 1fr); grid-template-rows: 100px; column-gap: 20px; } #grid > div { background-color: lime; }
{{EmbedLiveSample("Grid布局", "auto", "120px")}}
<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>
.content-box { column-count: 3; column-gap: 40px; }
{{EmbedLiveSample("Multi-column布局", "auto", "120px")}}
规范 | 状态 | 备注 |
---|---|---|
{{SpecName("CSS3 Box Alignment", "#column-row-gap", "column-gap")}} | {{Spec2("CSS3 Box Alignment")}} | 在弹性布局和网格布局中应用 |
{{SpecName("CSS3 Grid", "#gutters", "column-gap")}} | {{Spec2("CSS3 Grid")}} | 描述在网格布局中的作用 |
{{SpecName("CSS3 Multicol", "#column-gap", "column-gap")}} | {{Spec2("CSS3 Multicol")}} | 初始化定义 |
{{cssinfo}}
{{Compat("css.properties.column-gap.flex_context")}}
{{Compat("css.properties.column-gap.grid_context")}}
{{Compat("css.properties.column-gap.multicol_context")}}