弹性盒子
由于弹性盒子是一个整体模块,而不是单一属性,因此它涉及很多内容,包括其整个属性集。其中一些属性应设置在容器(父元素,称为“弹性容器”)上,而其他属性应设置在子元素(称为“弹性项目”)上。
弹性容器属性
以下是适用于容器的属性列表
这定义了一个弹性容器
1 | .container { |
弹性方向
此属性定义弹性项目在弹性容器中的放置方向:
- row(从左到右)
- row-reverse(从右到左)
- column(从上到下)
- column-reverse(从下到上)
1 | .container { |
flex-wrap
默认情况下,所有 flex
项目都会尝试放在一行中。你可以使用此属性更改此设置并允许项目根据需要换行。(wrap
、nowrap
、wrap-reverse
)
1 | .container { |
justify-content
这定义了沿主轴的对齐方式。当一行上的所有弹性项目都不可伸缩,或者可伸缩但已达到其最大尺寸时,它有助于分配剩余的额外可用空间。
1 | flex-start [- - - ] |
1 | .container { |
align-items
这定义了弹性项目在当前行沿横轴的默认布局方式
1 | flex-start |
1 | .container { |
弹性项目属性
以下是适用于单个项目的属性列表
order
默认情况下,弹性项目按源顺序排列。但是,顺序属性控制它们在弹性容器中的显示顺序。
1 | .item { |
flex-grow
这定义了弹性项目在必要时增长的能力
1 | .item { |
align-self
这允许为单个弹性项目覆盖默认对齐方式(或由 align-items
指定的对齐方式)。
例如,如果 align-items
设置为 flex-start
1 | [ ----- ] |
将 .item3 设置为:
1 | .item3 { |
将创建此自定义对齐:
1 | [ -- -- ] |
相关文章: