回到所有的课程
课程库

网格

使用CSS网格在响应式布局中定位内容。

这个视频的特点是一个旧的UI。更新版本即将发布!
克隆这个项目

在这节课中:

  1. 创建和编辑网格
  2. 将内容放置在网格中
  3. 移动、跨越和对齐网格内容
  4. 设计一个响应网格

Webflow中的网格布局使CSS网格在一个完全可视化的画布上变得栩栩如生。这让你更直接地控制你的布局和设计。使用网格,您可以在网格内的任何地方重新定位和调整项目的大小,以生成功能强大、响应迅速的布局——更快。

您可以使用网格来创建各种布局。例如,您可以使用它创建一个表,以便在较小的设备上轻松转换为卡片。

创建和编辑网格

的网格元素中选择网格元素即可创建网格添加面板。控件中的任何现有元素也可以应用网格布局风格的面板

编辑一个网格

要编辑网格,请单击编辑网格布局风格的面板当您选中网格时。

若要退出网格编辑模式,按ESC或者点击完成在画布上。

添加列和行

要添加列和行,请选择添加控件中出现在画布上或风格的面板

复制和删除行和列

若要复制或删除列或行,请右键单击列或行标题并选择重复的删除

控件中的任何行或列也可以删除或复制风格的面板当鼠标悬停在列或行上时。

重新排列行和列

中的行或列重新排序风格的面板,打开网格设置,将鼠标悬停在要移动的行或列上,然后拖动出现的手柄。

调整列和行之间的间隙

间隙允许您指定网格项之间的空间,而无需添加空白或填充。若要调整列和行之间的间隙大小,请单击并拖动画布上的间隙。

或者,您可以在风格的面板

调整列和行大小

要调整网格列的大小,请在画布上选择并拖动列标题到所需的大小。

控件中的行或列标题中为列和行输入自定义大小风格的面板

FR单位

网格布局引入了一个额外的长度单元来帮助我们定义网格:FR单元。FR单元表示网格容器中可用空间的一小部分。您使用它来定义行和列的长度,就像百分比或像素单位一样。但是,与固定百分比或像素单位不同,FR单元在调整间隙时自动计算单元格空间。

大小调整值为1FR的列将拉伸或收缩以填充网格容器中的可用空间。如果添加或删除列,所有单位为1FR的列将相应调整。

了解更多关于FR单元的信息

最小/最大设置

设置最小/最大值可确保行和列不会缩小到设置的最小值或扩大到设置的最大值。例如,一行的默认高度为auto,并将扩展或缩小以适应里面的内容。

如果你想让你的行有一个最小高度,比如说200px,你可以设置最小值为200px,最大值为Auto。这样,行将根据内容增长,不会缩小超过200px。您可以对列执行同样的操作。

要为任何列或行输入最小/最大值,请在画布上的曲目标题中或在风格的面板

将内容放置在网格中

您可以在网格中添加任何内容:标题、图像、div块,甚至另一个网格。添加到网格中的任何内容都将成为该网格的子元素。默认情况下,每个新的网格子单元格将填充一个单独的网格单元格——从左到右填充下一个可用的单元格。如果一行中没有更多可用的单元格,则会生成一个新行来容纳新的子网格。

改变网格内容流动的方向

控件中的方向设置,可以更改网格子节点的方向风格的面板.在这里,您可以选择默认的行设置,即从左到右排列子级。或者,将方向更改为列,将子元素从上到下放置。

在网格中手动定位内容

若要覆盖自动放置设置以手动放置网格中的项目,请长按转变将元素拖到网格中。在网格中手动定位的任何项目都将保持手动位置设置。

要将现有网格子模块的位置设置更改为手动设置,请选择网格子模块并更新风格的面板

手动放置的子网格将保留在指定的网格单元格中。当自动放置的网格子单元格移动到下一个单元格以容纳新的网格子单元格。

在网格单元格中嵌套多个元素

通过在网格子单元中嵌套元素,可以向单个网格单元中添加多个元素。要做到这一点,首先需要向网格添加一个布局元素,比如Div块,作为直接网格子元素。

将布局元素(如Div块)添加为网格子元素之后,可以通过按住将其他元素添加到Div块中控制当您将元素拖放到网格单元格中时。

复制网格中的内容

有两种方法可以复制一个网格子,在网格中的多个单元格中重用相同的内容:

  1. 持有Alt(在Windows上)或选项(在Mac上)并拖动内容来创建并将副本移动到一个新的网格单元格中
  2. 选择并复制内容,然后选择网格并粘贴内容

移动、跨越和对齐网格中的内容

一旦将内容放入网格中,就可以随心所欲地操作它们。您可以移动内容以在不同的单元格中重新定位它们。您可以跨越内容以占用多个单元格。您还可以调整网格内内容的对齐方式。

移动网格的孩子

要重新定位网格中的内容,请选择并拖动网格子节点到画布上的所需位置,或在导航器

设置网格子顺序

控件的网格子设置部分中设置网格子的顺序风格的面板

在网格中对齐内容

控件中的所有子网格的对齐方式要更新,请选择网格并更改对齐方式设置风格的面板

控件的网格子部分中,选择网格子并更新自对齐设置即可更改单个网格子的对齐方式风格的面板

跨网格的孩子

要跨多个网格单元格跨越网格子单元格,请选择网格子单元格并拖动出现在网格单元格角落中的句柄。

的子网格也可以跨风格的面板.对于具有自动定位功能的子网格,请指定子网格应该跨越多少列和多少行。

对于手动定位的子项目,请输入项目开始和结束的列和行。

观看视频教程跨越响应网格中的内容

锁定网格子定位

负网格子定位值很好,如果你:

  1. 不希望每次添加新列时重新扩展导航栏以填充所有列
  2. 无论向网格中添加多少行,都希望将页脚保持在网格的最后一行
  3. 要保持主要内容部分总是在你的网格中心

负数允许您相对于网格的末端定位子单元——它们从右到左或从下到上引用单元格。

要使导航栏跨越所有列,请将其放置在列1(第一列)和列-1(最后一列)之间。

若要始终将页脚保持在网格的最后一行,请将其放置在行-1/ -1中。

如果您想保持子节点在网格的中心,每边的列数相同,请将“end”值设置为“start”值的负等值。例3/-3或2/-2。现在,如果在较小的断点上删除列,子节点将保持居中。

清除网格子设置

网格子设置只应用于所选元素,它们不会与类一起保存。粉红色的标签风格的面板显示应用于当前断点上选定元素的更改设置。这些样式级联到较低的断点,并用橙色标签表示。当您在较小的断点上覆盖继承的(橙色)样式时,指示符将再次变为粉红色。

要删除任何应用的网格子设置,请单击粉色标签,然后单击重置。

重叠网格的孩子

手动定位的子网格在同一单元格中相交时会自动重叠。您还可以控制这些重叠元素的堆栈顺序。可以通过将它们重新定位到导航器,或通过调整定位和z-index设置。

观看视频教程重叠网格内容

填充空网格单元格

当您跨了子网格时,空单元格可能保留在网格中。中的密集设置可自动填充这些单元格中的内容风格的面板

请注意密集的试图将网格子单元格装入网格的空单元格中。这可能不利于可访问性,因为它只会改变项目的位置显示,而不是出现在页面源代码中的位置。

设计一个响应网格

要设计网格,使其跨屏幕响应,您可以手动删除较小视口上的列,或启用自动匹配功能,自动生成列和行,以适应较小的屏幕尺寸。

跨断点手动设置网格布局样式

要确保网格在所有设备上都能响应,请在较小的断点上查看网格,并根据需要删除列。

如果不能在较小的断点上删除列,请尝试:

  1. 将网格方向设置为行
  2. 确保您没有在这些列中手动定位网格子
  3. 确保没有子元素跨越这些列

使Auto-fit

自动调整是CSS网格最强大的功能之一,它允许你自动重复和换行列,这样你就可以构建一个跨每一个屏幕尺寸的布局-不需要每个断点调整。

若要启用自动匹配,请删除除一列和一行以外的所有列和行。设置列的最小和最大尺寸并启用自动匹配。

更多的列将自动生成并重复以响应方式分发内容。

观看视频教程使用自动匹配将集合列表转换为响应网格

一旦你完成了网格的创建,学习如何使用网格区域创建可重用布局模板

尝试Webflow——它是免费的
Baidu
map