就像我们在上一章中指定的那样,这是一个 Flex容器(蓝色区域)具有三个弹性项目:
通过设置 Flex 容器变得灵活display
属性为flex
:
Flex 容器属性为:
这个flex-direction
属性定义容器想要堆叠弹性项目的方向。
这个column-reverse
value 垂直堆叠弹性项目(但从下到上):
.flex-container {
display: flex;
flex-direction: column-reverse;
}
这个row-reverse
value 水平堆叠弹性项目(但从右到左):
.flex-container {
display: flex;
flex-direction: row-reverse;
}
这个flex-wrap
属性指定弹性项目是否应该换行。
下面的示例有 12 个弹性项目,以更好地演示 flex-wrap
属性。
这个wrap-reverse
value 指定灵活项目将在必要时按相反顺序换行:
.flex-container {
display: flex;
flex-wrap: wrap-reverse;
}
这个flex-flow
property 是一个简写属性,用于设置 flex-direction
和flex-wrap
特性。
这个justify-content
属性用于对齐弹性项目:
这个flex-start
value 将弹性项目对齐在容器的开头(这是默认值):
.flex-container {
display: flex;
justify-content: flex-start;
}
这个flex-end
value 将弹性项目对齐到容器的末尾:
.flex-container {
display: flex;
justify-content: flex-end;
}
这个space-around
value 显示 Flex 项目,并在行前、行间和行后留出空间:
.flex-container {
display: flex;
justify-content: space-around;
}
这个space-between
value 显示弹性项目,行之间有空格:
.flex-container {
display: flex;
justify-content: space-between;
}
这个align-items
属性用于对齐弹性项目。
在这些示例中,我们使用 200 像素高的容器,以更好地演示 align-items
属性。
这个center
value 将弹性项目对齐在容器的中间:
.flex-container {
display: flex;
height: 200px;
align-items: center;
}
这个flex-start
value 将弹性项目对齐在容器的顶部:
.flex-container {
display: flex;
height: 200px;
align-items: flex-start;
}
这个flex-end
value 对齐容器底部的弹性项目:
.flex-container {
display: flex;
height: 200px;
align-items: flex-end;
}
这个stretch
value 拉伸弹性项目以填充容器(这是默认值):
.flex-container {
display: flex;
height: 200px;
align-items: stretch;
}
这个baseline
value 对齐弹性项目,例如它们的基线对齐:
.flex-container {
display: flex;
height: 200px;
align-items: baseline;
}
笔记:该示例使用不同的字体大小来演示项目按文本基线对齐:
这个align-content
属性用于对齐弹性线。
在这些示例中,我们使用 600 像素高的容器,其中 flex-wrap
属性设置为wrap
,为了更好地展示align-content
属性。
这个space-between
value 显示弯曲线之间的间距相等:
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: space-between;
}
这个space-around
value 显示弯曲线,并在其之前、之间和之后留有空间:
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: space-around;
}
这个stretch
value 拉伸伸缩线以占据剩余空间(这是默认值):
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: stretch;
}
这个center
value 显示容器中间的伸缩线:
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: center;
}
这个flex-start
value 显示容器开头的伸缩线:
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: flex-start;
}
这个flex-end
value 显示容器末尾的伸缩线:
.flex-container {
display: flex;
height: 600px;
flex-wrap: wrap;
align-content: flex-end;
}
在下面的示例中,我们将解决一个非常常见的样式问题:完美居中。
解决方案:设置两个justify-content
和align-items
属性到center
,并且弹性项目将完全居中:
.flex-container {
display: flex;
height: 300px;
justify-content: center;
align-items: center;
}
下表列出了所有 CSS Flexbox 容器属性:
Property | Description |
---|---|
align-content | Modifies the behavior of the flex-wrap property. It is similar to align-items, but instead of aligning flex items, it aligns flex lines |
align-items | Vertically aligns the flex items when the items do not use all available space on the cross-axis |
display | Specifies the type of box used for an HTML element |
flex-direction | Specifies the direction of the flexible items inside a flex container |
flex-flow | A shorthand property for flex-direction and flex-wrap |
flex-wrap | Specifies whether the flex items should wrap or not, if there is not enough room for them on one flex line |
justify-content | Horizontally aligns the flex items when the items do not use all available space on the main-axis |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!