flex项目属性

2022-06-01 08:35:05 浏览数 (1)

五、flex项目属性

order 定义项目排列顺序。数值越小,排列越靠前,默认为0

代码语言:javascript复制
.item {
  order: <integer>;
}

flex-grow 定义项目放大比例,默认为0

如果所有项目flex-grow属性为1,它们将等分剩余空间。以此类推

flex-shrink 定义项目缩小比例,默认为1

如果所有项目flex-shrink属性为1,当空间不足时等比例缩小。

如果有一个项目flex-shrink为0,其他项目都为1,空间不足时前者不缩小

flex-basis 定义在分配多余空间前,项目占据的主轴空间(main size)

浏览器据此计算主轴是否有多余空间,默认值为auto即项目本来的大小

代码语言:javascript复制
.item {
  flex-basis: <length> | auto;
}
代码语言:javascript复制
flex 是flex-grow,flex-shink,flex-basis的简写,语法糖,默认值0,1,auto,后两者可选
.item {
  flex: none | [<flex-grow> <flex-shrink> ? || <flex-basis>]
}

有两个快捷值:

auto: 1 1 auto

none: 0 0 auto

建议优先使用此属性代替单独写3个分离的属性,因为浏览器会推算相关值。

align-self 允许单个项目与其他项目不一样的对齐方式,可覆盖align-items属性

默认值auto,表示继承父元素的align-items,如果没有父元素则等同于strech

代码语言:javascript复制
.item {
  align-self: auto | flex-start | flex-end | center | baseline | stretch;
}

0 人点赞