CSS Grid:如何使用 Grid-template-rows 和 Grid-template-columns 属性

阅读时长 4 分钟读完

简介

CSS 网格布局是一种强大的布局系统,可以让开发者轻松地构建网格化布局。在 CSS 网格布局中,可以使用 grid-template-rows 和 grid-template-columns 属性来定义网格的行和列及其大小。

使用 grid-template-rows 和 grid-template-columns

grid-template-rows 属性用于定义网格的行,而 grid-template-columns 属性用于定义网格的列。它们的值可以包含多个指定网格大小的关键字、长度值、百分比值、fr 单位和 repeat() 函数等。

关键字值

以下是一些常用的关键字,用于快速定义网格的行和列:

  • auto:默认值。
  • min-content、max-content:根据内容自动设置大小。
  • fit-content:根据内容自动设置大小,并尽可能填满剩余的空间。
  • minmax(min-value, max-value):指定一个范围的最小值和最大值。

长度和百分比值

可以使用长度和百分比值来定义行和列的大小。

上述代码将创建一个包含两行三列的网格,第一行高度为 100px,第二行高度为 200px,第一列和第三列的宽度相同,为第二列的两倍。

fr 单位

fr 是一种相对长度单位,根据可用空间按比例分配网格。例如,以下代码将创建一个包含两行两列的网格,第一行占用一半空间,第二行占用一半空间,第一列占用一半空间,第二列占用一半空间。

repeat() 函数

可以使用 repeat() 函数来快速创建重复的网格行和列。例如,以下代码将创建一个包含四行三列的网格,每一行高度相同,为 50px,每一列宽度相同,为 1fr。

示例代码

以下是一个基本的示例,使用 grid-template-rows 和 grid-template-columns 属性来定义一个包含四行三列的网格。

-- -------------------- ---- -------
---- -----------------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
  ---- ----------- ---------------
------
-- -------------------- ---- -------
--------------- -
  -------- -----
  ------------------- --------- -------
  ---------------------- --------- -----
  ---- -----
  -------------- -------
  ------------ -------
-

----- -
  ----------------- --------
  ---------- -----
  -------- -----
  ---------------- -------
  ------------ -------
-

在上述示例中,我们创建了一个包含四行三列的网格,每一行高度为 100px,每一列宽度为可用空间的三等分。我们还添加了间隔、内容居中对齐等样式。

总结

grid-template-rows 和 grid-template-columns 属性是 CSS 网格布局中非常有用的属性,可以用于定义网格的行和列。它们有许多不同的值,可以灵活地控制网格大小和位置。通过学习如何使用这两个属性,可以轻松创建复杂、自适应的网格布局。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65bb2cacadd4f0e0ff3cceef

纠错
反馈