文章目录
css Flex布局
决定容器内的排列方向
flex-direction:row
在X轴方向排列,起点在左端

flex-direction:row-reverse
在X轴方向排列,起点在右端

flex-direction:column
在Y轴方向排列,起点在上沿

flex-direction:column-reverse
在Y轴方向排列,起点在下沿

决定容器内如何换行
flex-wrap:nowrap
如果一条轴线排列不下,不换行

flex-wrap:wrap
如果一条轴线排列不下,换行且第一行在上方

flex-wrap:wrap-reverse
如果一条轴线排列不下,换行且第一行在下方

排列方向及换行方式简写
flex-flow:row nowrap
flex-direction属性和flex-wrap属性的简写形式:flex-flow: <flex-direction> <flex-wrap>;
决定容器内的对齐方式:X轴
justify-content:flex-start
在X轴方向上,左对齐

justify-content:flex-end
在X轴方向上,右对齐

justify-content:center
在X轴方向上,居中对齐

justify-content:space-between
在X轴方向上,两端对齐,子项目之间的间隔都相等

justify-content:space-around
在X轴方向上,每个子项目两侧的间隔相等,子项目之间的间隔会比子项目与边框的间隔大一倍

决定容器内的对齐方式:Y轴
align-items:stretch
在Y轴方向上,如果子项目未设置高度或设为auto,将占满整个容器的高度

align-items:flex-start
在Y轴方向上,与上沿对齐

align-items:flex-end
在Y轴方向上,与下沿对齐

align-items:center
在Y轴方向上,居中对齐

align-items:baseline
与子项目的第一行文字的基线对齐

决定容器内的对齐方式:XY轴
定义整个项目在多行排列或多列排列时的对齐方式
如果整个项目只排满一行或一列,则该属性不起作用
align-content:stretch
flex-flow: row wrap:所有子项目在X轴优先排满
align-content:stretch:整个项目在Y轴方向上自动拉伸

flex-flow: column wrap:所有子项目在Y轴优先排满
align-content:stretch:整个项目在X轴方向上自动拉伸

align-content:flex-start
flex-flow:row wrap:所有子项目在X轴优先排满
align-content:flex-start:整个项目在Y轴方向上与上沿对齐

flex-flow:column wrap:所有子项目在Y轴优先排满
align-content:flex-start:整个项目在X轴方向上左对齐

align-content:flex-end
flex-flow:row wrap:所有子项目在X轴优先排满
align-content:flex-end:整个项目在Y轴方向上与下沿对齐

flex-flow:column wrap:所有子项目在Y轴优先排满
align-content:flex-end:整个项目在X轴方向上右对齐

align-content:center
flex-flow:row wrap:所有子项目在X轴优先排满
align-content:center:整个项目在Y轴方向上居中对齐

flex-flow:column wrap:所有子项目在Y轴优先排满
align-content:center:整个项目在X轴方向上居中对齐

align-content:space-between
flex-flow:row wrap:所有子项目在X轴优先排满
align-content:space-between:整个项目在Y轴方向上两端对齐

flex-flow:column wrap:所有子项目在Y轴优先排满
align-content:space-between:整个项目在X轴方向上两端对齐

align-content:space-around
flex-flow:row wrap:所有子项目在X轴优先排满
align-content:space-around:整个项目在Y轴方向上两侧间隔相等

flex-flow:column wrap:所有子项目在Y轴优先排满
align-content:space-around:整个项目在X轴方向上两侧间隔相等

定义单个子项目的属性
排列顺序:order
属性数值越小,排列越靠前,默认值为0

放大比例:flex-grow
默认值为0:即使存在剩余空间,也不放大
如果所有子项目的flex-grow都为1,则它们将等分剩余空间

如果一个子项目的flex-grow为2,其余为1,则前者占据的剩余空间是其他子项目的一倍

缩小比例:flex-shrink
默认值为1,即如果空间不足,该子项目将缩小;负值对该属性无效
如果所有子项目的flex-shrink都为1,当剩余空间不足时,都将等比例缩小

如果一个子项目的flex-shrink为0,其余为1,则空间不足时,前者不缩小

初始大小:flex-basis
该属性定义在分配多余空间之前,子项目占据的空间。
浏览器根据该属性计算是否有多余空间。它的默认值为auto,即子项目内容的大小

缩放比例及初始大小简写:flex
flex 属性是flex-grow、flex-shrink和flex-basis的简写,默认值 0 1 auto;后两个属性为可选值
flex 属性有两个快捷值:auto(1 1 auto)和 none(0 0 auto)
建议优先使用该属性,而不是单独写三个分离的属性,因为浏览器会推算相关值
对齐方式:align-self
align-self 属性允许单个子项目有与其他子项目不一样的对齐方式,可覆盖align-items属性
align-self 属性默认值为auto,表示继承父元素align-items属性,如果没有父元素,则等同于stretch

本文详细介绍CSS Flex布局的各种属性,包括容器内的排列方向、换行方式、对齐方式以及子项目的属性设置等,帮助读者深入理解并掌握Flex布局的使用。
816

被折叠的 条评论
为什么被折叠?



