| 类名 | 样式 |
|---|---|
| .gap-0 | gap: 0; |
| .间隙-1 | gap: 0.25rem; |
| .gap-2 | gap: 0.375rem; |
| .gap-3 | gap: 0.5rem; |
| .gap-4 | gap: 0.75rem; |
| .gap-5 | gap: 1rem; |
| .gap-6 | gap: 1.25rem; |
| .gap-7 | gap: 1.5rem; |
| .gap-8 | gap: 1.75rem; |
| .gap-9 | gap: 2rem; |
| .gap-10 | gap: 2.25rem; |
| .gap-11 | gap: 2.5rem; |
| .gap-12 | gap: 3rem; |
| .row-gap-0 | row-gap: 0; |
| .row-gap-1 | row-gap: 0.25rem; |
| .row-gap-2 | row-gap: 0.375rem; |
| .row-gap-3 | row-gap: 0.5rem; |
| .row-gap-4 | row-gap: 0.75rem; |
| .row-gap-5 | row-gap: 1rem; |
| .row-gap-6 | row-gap: 1.25rem; |
| .row-gap-7 | row-gap: 1.5rem; |
| .row-gap-8 | row-gap: 1.75rem; |
| .row-gap-9 | row-gap: 2rem; |
| .row-gap-10 | row-gap: 2.25rem; |
| .row-gap-11 | row-gap: 2.5rem; |
| .row-gap-12 | row-gap: 3rem; |
| .column-gap-0 | column-gap: 0; |
| .column-gap-1 | column-gap: 0.25rem; |
| .column-gap-2 | column-gap: 0.375rem; |
| .列间距-3 | column-gap: 0.5rem; |
| .column-gap-4 | column-gap: 0.75rem; |
| .column-gap-5 | column-gap: 1rem; |
| .column-gap-6 | column-gap: 1.25rem; |
| .column-gap-7 | column-gap: 1.5rem; |
| .列间距-8 | column-gap: 1.75rem; |
| .column-gap-9 | column-gap: 2rem; |
| .column-gap-10 | column-gap: 2.25rem; |
| .column-gap-11 | column-gap: 2.5rem; |
| .column-gap-12 | column-gap: 3rem; |
概览
使用间距工具类来控制 flexbox 和网格布局中子元素之间的间距。间距工具类是基于默认的 Sass map构建的,范围从0到3rem(.gap-0到.gap-12)。使用像.gap-3和.gap-5这样的工具类来控制所有子元素之间的间距:
项目 1
项目 2
项目 1
项目 2
<div class="d-flex gap-3">...</div>
<div class="d-flex gap-5">...</div>
支持说明:间距工具适用于 CSS 网格和弹性布局。它们是子元素在容器内间距的现代替代方案,相对于使用 margin 工具。
符号
适用于所有断点的间距工具类,从 xs 到 2xl,它们没有断点前缀。这是因为这些类从 min-width: 0 开始应用,因此不受媒体查询的限制。然而,其余的断点确实包含断点前缀。
这些类使用以下格式命名:{property}-{size}表示xs,{breakpoint}:{property}-{size}表示sm、md、lg、xl和2xl。
其中 property 为以下之一:
gap- 用于设置gap的类row-gap- 用于设置row-gap的类column-gap- 用于设置column-gap的类
其中 size 为以下之一:
0- 对于消除…的课程gap通过将其设置为01-(默认情况下)用于设置该类的gap到$spacer * .252-(默认情况下)用于设置该类的gap到$spacer * .3753-(默认情况下)用于设置该类的gap到$spacer * .54-(默认情况下)用于设置该类的gap到$spacer * .755-(默认情况下)用于设置该类的gap到$spacer * 16-(默认情况下)用于设置该类的gap到$spacer * 1.257-(默认情况下)用于设置该类的gap到$spacer * 1.58-(默认情况下)用于设置该类的gap到$spacer * 1.759-(默认情况下)用于设置该类的gap到$spacer * 210-(默认情况下)用于设置该类的gap到$spacer * 2.2511-(默认情况下)用于设置该类的gap到$spacer * 2.512-(默认情况下)用于设置该类的gap到$spacer * 3
(你可以通过向 $spacers Sass map变量添加条目来增加更多尺寸。)
示例
Flexbox 间距
使用 gap 工具来控制 flexbox 容器中子元素之间的间距:
项目 1
项目 2
项目 3
<div class="d-flex gap-4">
<div>Item 1</div>
<div>Item 2</div>
<div>Item 3</div>
</div>
网格间隙
间距工具也适用于 CSS 网格布局:
项目 1
项目 2
项目 3
项目 4
<div class="d-grid gap-3" style="grid-template-columns: 1fr 1fr;">
<div>Item 1</div>
<div>Item 2</div>
<div>Item 3</div>
<div>Item 4</div>
</div>
行和列间隙
使用 row-gap 和 column-gap 工具可独立控制行与列之间的间距:
项目 1
项目 2
项目 3
项目 4
项目 5
项目 6
<div class="d-grid row-gap-4 column-gap-2" style="grid-template-columns: 1fr 1fr 1fr;">
<div>Item 1</div>
<div>Item 2</div>
<div>Item 3</div>
<div>Item 4</div>
<div>Item 5</div>
<div>Item 6</div>
</div>
带换行的弹性盒子
你也可以在换行的 flexbox 布局中使用 row-gap 和 column-gap 工具类:
项目 1
项目 2
项目 3
项目 4
项目 5
<div class="d-flex flex-wrap row-gap-3 column-gap-2">
<div>Item 1</div>
<div>Item 2</div>
<div>Item 3</div>
<div>Item 4</div>
<div>Item 5</div>
</div>
响应式
所有的间隙工具都是响应式的,并包含所有断点。
.gap-0到.gap-12.sm:gap-0到.sm:gap-12.md:gap-0到.md:gap-12.lg:gap-0到.lg:gap-12.xl:gap-0到.xl:gap-12.2xl:gap-0到.2xl:gap-12
.row-gap-0到.row-gap-12.sm:row-gap-0到.sm:row-gap-12.md:row-gap-0到.md:row-gap-12.lg:row-gap-0到.lg:row-gap-12.xl:row-gap-0到.xl:row-gap-12.2xl:row-gap-0到.2xl:row-gap-12
.column-gap-0到.column-gap-12.sm:column-gap-0到.sm:column-gap-12.md:column-gap-0到.md:column-gap-12.lg:column-gap-0到.lg:column-gap-12.xl:column-gap-0到.xl:column-gap-12.2xl:column-gap-0到.2xl:column-gap-12
CSS
Sass 工具 API
间距工具在我们的工具类 API 中的 scss/_utilities.scss 声明。了解如何使用工具类 API。
"gap": (
responsive: true,
property: gap,
class: gap,
values: $spacers
),
"row-gap": (
responsive: true,
property: row-gap,
class: row-gap,
values: $spacers
),
"column-gap": (
responsive: true,
property: column-gap,
class: column-gap,
values: $spacers
),