Skip to content

栅格

Responsive Style 的栅格系统使用一系列容器、行和列来布局和对齐内容。它采用 flexbox 构建 12 列栅格系统,具备完整的响应式支持。下面简单介绍一下它的工作原理:

  • 通过 .row 在水平方向建立一组 column(类名 .col);
  • 你的内容应当放置于 .col 元素内,并且,只有 .col 可以作为 .row 的直接元素;
  • 栅格系统中的列是指 1 到 12 的值来表示其跨越的范围。例如,三个等宽的列可以使用 <div class="col" /> 来创建;
  • 如果一个 .row 中的 .col 总和超过 12,那么多余的 .col 会作为一个整体另起一行排列;
  • 响应式支持通过在 .col 上使用断点前缀类来实现,例如:.sm:col-4

基础栅格

使用我们预定义的 .row, .col 网格类在所有设备和视口上创建各类宽度的列。这些列与父级 .container 一起居中显示在页面中。

基础栅格

水平对齐

.row 上使用 .justify-content-* 这些类可以结合响应式前缀使用(如 .sm:justify-content-end),以便在不同的断点上对齐列。

水平对齐

垂直对齐

.row 上使用 .align-items-* 类可以控制列的垂直对齐方式。这些类可以结合响应式前缀使用(如 .sm:align-items-end),以便在不同的断点上对齐列。

垂直对齐

或者,使用任何响应式 .align-self-* 类单独更改每一列的对齐方式。

独立垂直对齐

栅格排序

使用 .order- 类来控制内容的视觉顺序。这些类是响应式的,因此您可以通过断点来设置顺序(例如,.order-1 .md:order-2)。包括对所有六个网格层中 1 到 5 的支持。如果您需要更多 .order-* 类,可以通过 Sass 变量修改默认数量。

栅格排序

还有响应式 .order-first.order-last 类,通过应用 order: -1order: 6 来改变元素的顺序。这些类还可以根据需要与编号为 .order-* 的类混合使用。

特殊栅格排序类

栅格偏移

使用响应式 .offset-* 类将列向右移动。这些类将列的左边距增加 * 列。例如,.md:offset-4 将在 md 断点移动 4 列。

栅格偏移

速查表

类名样式
.rowdisplay: flex; flex-wrap: wrap;
.colflex: 1 0 0;
.col-1width: 8.33333333%
.col-2width: 16.66666667%
.col-3width: 25%
.col-4width: 33.33333333%
.col-5width: 41.66666667%
.col-6width: 50%
.col-7width: 58.33333333%
.col-8width: 66.66666667%
.col-9width: 75%
.col-10width: 83.33333333%
.col-11width: 91.66666667%
.col-12width: 100%
.offset-1margin-left: 8.33333333%
.offset-2margin-left: 16.66666667%
.offset-3margin-left: 25%
.offset-4margin-left: 33.33333333%
.offset-5margin-left: 41.66666667%
.offset-6margin-left: 50%
.offset-7margin-left: 58.33333333%
.offset-8margin-left: 66.66666667%
.offset-9margin-left: 75%
.offset-10margin-left: 83.33333333%
.offset-11margin-left: 91.66666667%

以上所有类均支持响应式前缀,如 sm:, md:, lg:, xl: