关于 Flexbox

Flexbox (CSS Flexible Box Layout) 是一种灵活排列容器(称为“Flex 容器”)中的元素的方式。容器中的元素(称为“Flex 内容”)可以放大或缩小,以便在保持指定的排序和间距的同时优化容器空间。在以下情况下,您可能会发现 Flexbox 特别有用:您想将不同大小的内容排列成行或列,并让较大内容比较小内容占用更多空间。

Flexbox 设置

您可以在“自适应”面板的 Flexbox 标签页上找到 Flexbox 设置。

使用 Flexbox

若要使用 Flexbox,请选中使用 Flexbox 复选框。当前的父元素会成为 Flex 容器,而 Flexbox 属性将显示在“自适应”面板中。

在以下情况下,Flexbox 不可用:

  • 当前父元素是文本元素,例如 <p><h1>
  • 当前父元素包含 <span><a> 等内嵌元素。如果父元素是页面,则不适用。

Flex 容器的任何直接子元素都会成为 Flex 内容。(辅助线层除外。)Flex 内容会沿主轴排列,该轴可设为水平或垂直。此外,您还可以配置内容沿轴的流动方向。由于 Flexbox 的朝向和方向可以更改,因此属性设置为“flex-start”和“flex-end”等值,而不是顶部、底部、左侧或右侧。

方向

方向通过设置主轴和沿该轴的流动方向来确定 Flex 内容的排列方式。

方向 行为 主轴
Flex 内容按文本流方向(对于从左到右书写的语言 [如英语],从左开始)逐行排列。
横向
行反向 Flex 内容按文本流的反方向(对于从左到右书写的语言 [如英语],从右开始)排列成行。
横向
Flex 内容按内容流方向(通常从顶部开始)排列成列。
纵向
列反向 Flex 内容按内容流反方向(通常从底部开始)排列成列。
纵向

间距

间距用于设置 Flex 内容是自动设置间隔,还是使用固定距离。

间距 行为
标准 Flex 内容会根据指定的两端对齐、换行和对齐设置,自动排列在 Flex 容器中。
固定 Flex 内容会根据指定的子间距和边界间距进行排列。

两端对齐

两端对齐决定了 Flex 内容沿主轴的排列方式。使用标准间距时,此设置可用。

两端对齐 行为
Flex 开始位置 Flex 内容打包在行或列的起始边缘。
Flex 结束位置 Flex 内容打包在行或列的结束边缘。
居中 Flex 内容沿主轴居中。
空间之间 Flex 内容沿主轴均匀间隔,起始内容和结束内容位于容器边缘。
空间环绕 Flex 内容沿主轴均匀间隔,且两端的间距均为一半。
空间均分 Flex 内容沿主轴均匀间隔,起始内容和结束内容的两侧都有相同的间距。

交叉轴对齐

交叉轴对齐是指 Flex 内容沿当前行或列的交叉轴排列的方式。

交叉轴对齐 行为
Flex 开始位置 Flex 内容位于交叉轴的起始边缘。
Flex 结束位置 Flex 内容位于交叉轴的结束边缘。
居中 Flex 内容沿交叉轴居中放置。
拉伸 Flex 内容会沿交叉轴拉伸以填充可用空间。
基准 Flex 内容沿交叉轴放置,以便对齐其基准。

换行

换行设置用于决定内容在容器中是否可换行。使用标准间距时,此设置可用。

换行 行为
不换行 Flex 内容排列在一行或一列中。
换行 当 Flex 内容太大而无法放在一行中时,Flex 内容可以换行以形成多个行或列。
换行反向 当 Flex 内容太大而无法放在一行中时,Flex 内容可以换行以形成多个行或列。交叉轴方向是相反的。

换行对齐

换行对齐用于在 Flex 容器中有多个行或列时,设置行或列沿交叉轴(与主轴垂直)的排列方式。在使用标准间距并启用了换行时,此设置可用。

换行对齐 行为
Flex 开始位置 行或列打包在容器的起始边缘。
Flex 结束位置 行或列打包在容器的结束边缘。
居中 行或列沿交叉轴居中显示。
拉伸 行或列沿交叉轴拉伸以填充可用空间,除非它们具有指定的高度。
空间之间 行或列沿交叉轴均分,起始行和结束行或列位于容器边缘。
空间环绕 行或列沿交叉轴均分,且两端均有一半的空间。

子间距

Flex 容器中两项内容之间保持的距离(以像素为单位)。此设置适用于采用固定间距的情况。

边界间距

外部内容与 Flex 容器之间保持的距离(以像素为单位)。使用固定间距时,此设置可用。

子级顺序

此处列出了 Flexbox 中包含的元素。若要对这些元素重新排序,请将内容拖动到列表中的新位置。

您还可以在场景上移动 Flex 内容来重新排序。

Flexbox 子属性

Flex 内容有自己的属性。选择子属性可查看和修改其 Flexbox 设置。

虽然 Flex 内容的大小可能会增大或缩小,但它们遵循最小和最大宽度和高度。它们的“左侧”和“顶部”属性已被停用,因为 Flex 内容根据 Flexbox 设置排列,但“平移”属性可用于偏移位置。

交叉轴对齐

Flex 内容的交叉轴对齐会覆盖为容器设置的默认交叉轴对齐。

交叉轴对齐 行为
自动 Flex 内容使用 Flex 容器的交叉轴对齐设置。
基准 Flex 内容的基准与采用基准对齐的其他 Flex 内容的基准对齐。
居中 Flex 内容位于交叉轴的中心。
Flex 结束位置 Flex 内容位于容器结束边缘的交叉轴上。
Flex 开始位置 Flex 内容位于容器起始边缘的交叉轴上。
拉伸 Flex 内容沿交叉轴拉伸以填满容器,除非它具有指定的高度。

Flex 展开

Flex 展开系数用于决定 Flex 内容将沿主轴展开多少(与同一行或同一列中其他内容的 Flex 展开系数成一定比例),以填充 Flex 容器中的可用空间。使用标准间距时,此设置可用。

例如,如果某行包含三个 Flex 展开系数分别为 1、1 和 2 的 Flex 内容,那么最后一项 Flex 内容在该行中占用的可用空间是其他 Flex 内容的两倍。

如果某行或列中内容的所有 Flex 展开系数的总和小于 1,Flex 内容可能不会占用全部可用空间。

当 Flex 展开系数为 0 时,Flex 内容将不会增大。

Flex 收缩

Flex 收缩系数用于决定 Flex 内容将沿主轴收缩多少(与同一行或同一列中其他内容的 Flex 收缩系数成一定比例),以适合 Flex 容器中的空间。使用标准间距时,此设置可用。

例如,如果某行包含三项 Flex 收缩系数分别为 1、1 和 2 的 Flex 内容,那么最后一项 Flex 内容的收缩程度比其他 Flex 内容更大。Flex 收缩系数会考虑 Flex 内容的大小。

当 Flex 收缩系数为 0 时,Flex 内容不会收缩。

该内容对您有帮助吗?

您有什么改进建议?
搜索
清除搜索内容
关闭搜索框
主菜单
8968801179863083491
true
搜索支持中心
true
true
true
true
true
5050422
false
false