空间分布

可用

6.1 属性 grid-gap

CSS Grid Layout 提供了灵活的工具来管理网格元素之间的空间。属性 grid-gapgrid-row-gapgrid-column-gap 可以轻松设置行和列之间的距离, 帮助你创建整洁有序的布局。让我们更详细地了解这些属性。

属性 grid-gap(缩写为 gap)定义了网格中行和列之间的总距离。 这是 grid-row-gapgrid-column-gap 的简写。

语法:

.grid-container {
  grid-gap: value;
}

这里:

  • value: 行和列之间的间距值。可以使用各种单位 (px, %, fr, auto 等等)

示例 1:对行和列使用相同的值

在这个例子中,20px 的间距将应用于行和列:

CSS
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 100px);
  grid-gap: 20px; /* 20px 间距用于所有行和列 */
}

示例 2:对行和列使用不同的值

在这个例子中,使用两个值:第一个值 10px 用于行,第二个值20px 用于列:

CSS
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 100px);
  grid-gap: 10px 20px; /* 行间距 10px,列间距 20px */
}

6.2 属性 grid-row-gap

属性 grid-row-gap 定义了网格中行与行之间的距离。这允许你为行间距指定一个与列无关的独立值。

语法:

.grid-container {
  grid-row-gap: value;
}

这里:

  • value: 行之间的间距值。可以使用各种单位
  • 示例 1:设置固定的行间距

    在这个例子中,行之间的距离将是 15px

    CSS
    .grid-container {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 100px);
      grid-row-gap: 15px; /* 行间距 15px */
    }

    示例 2:使用百分比来设置间距

    在这个例子中,行之间的距离将是行高的 5%

    CSS
    .grid-container {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 100px);
      grid-row-gap: 5%; /* 行高的 5% 间距 */
    }

    6.3 属性 grid-column-gap

    属性 grid-column-gap 定义了网格中列与列之间的距离。这允许你为列间距指定一个与行无关的独立值。

    语法:

    .grid-container {
      grid-column-gap: value;
    }

    这里:

    • value: 列之间的间距值。可以使用各种单位

    示例 1:设置固定的列间距

    在这个例子中,列之间的距离将是 25px

    CSS
    .grid-container {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 100px);
      grid-column-gap: 25px; /* 列间距 25px */
    }

    示例 2:使用 em 为间距设置值

    在这个例子中,列之间的距离将是 2em

    CSS
    .grid-container {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 100px);
      grid-column-gap: 2em; /* 列间距 2em */
    }

    6.4 组合使用 grid-row-gap 和 grid-column-gap

    你可以组合使用 grid-row-gapgrid-column-gap 属性,以更精确地控制行和列之间的间距。

    完整实现示例:

    CSS
    .grid-container {
      display: grid;
      grid-template-columns: repeat(3, 1fr); /* 三个相同宽度的列 */
      grid-template-rows: repeat(3, 100px); /* 三个固定高度的行 */
      grid-row-gap: 15px; /* 行间距 15px */
      grid-column-gap: 25px; /* 列间距 25px */
    }
    
    .grid-item {
      background-color: #3498db;
      color: white;
      padding: 20px;
      text-align: center;
      border: 1px solid #fff;
    }
    HTML
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>grid-gap、grid-row-gap 和 grid-column-gap 的使用示例</title>
        <link rel="stylesheet" href="styles.css">
      </head>
      <body>
        <div class="grid-container">
          <div class="grid-item item1">项目 1</div>
          <div class="grid-item item2">项目 2</div>
          <div class="grid-item item3">项目 3</div>
          <div class="grid-item item4">项目 4</div>
          <div class="grid-item item5">项目 5</div>
          <div class="grid-item item6">项目 6</div>
        </div>
      </body>
    </html>

    代码说明:

    • .grid-container: 创建一个拥有三个相同宽度的列和三个固定高度行的 Grid 容器。 使用 grid-row-gapgrid-column-gap 属性来设置行和列之间的间距
    • .grid-item: 定义网格元素的基本样式,如背景色、文字颜色、内边距、文本居中和边框
    1
    任务
    Frontend SELF ZH,  第 28 级课程 0
    已锁定
    均匀间隔
    均匀间隔
    1
    任务
    Frontend SELF ZH,  第 28 级课程 0
    已锁定
    不同的间距
    不同的间距
    评论
    • 受欢迎
    你必须先登录才能发表评论
    此页面还没有任何评论