美文网首页
flex弹性布局

flex弹性布局

作者: 李小白呀 | 来源:发表于2020-12-22 19:53 被阅读0次

    1. flex布局原理

    为父盒子设置flex布局后,来控制子盒子的位置和排列方式,且子元素的float(浮动)、clear(清除浮动) 和 vertical-align(元素对齐方式) 属性都将失效。此时容器中的直系子元素就会变为flex 元素。所有CSS属性都会有一个初始值,所以 flex 容器中的所有 flex 元素都会有下列行为:

    元素排列为一行 (flex-direction属性的初始值是row)。

    元素从主轴的起始线开始。

    元素不会在主维度方向拉伸,但是可以缩小。

    元素被拉伸来填充交叉轴大小。

    flex-basis属性为auto。

    flex-wrap属性为nowrap。

    vertical-align属性运用(只对行内和行内块元素有效):

    baseline:基线对齐

    top:顶端对齐

    middle:中部对齐

    bottom:底线对齐

    2.父项常见属性(display:flex)

    主轴:

    主轴方向:flex-direction

    row(默认)从左到右

    row-reverse 从右到左

    column 从上到下

    column-reverse 从下到上

    主轴上子元素排列方式:justify-content

    flex-start 从头开始排列

    flex-end 从尾开始排列

    center 居中对齐

    space-around 平分剩余空间

    space-between 先两边贴边,再平分剩余空间

    子元素是否换行:flex-wrap

    nowrap (默认)不换行

    wrap 换行

    wrap-reverse:换行,第一行在下方。

    侧轴:

    设置侧轴上的排列方式(多行):align-content

    flex-start 从头开始排列

    flex-end 从尾开始排列

    center 居中对齐

    stretch 平分父元素高度

    space-around 平分剩余空间

    space-between 先两边贴边,再平分剩余空间

    侧轴单行排列:align-items

    flex-start 从上到下

    flex-end 从下到上

    center 垂直居中

    stretch 拉伸(默认)

    复合属性主轴方向+换行:flex-flow

    eg:flex-flow:row wrap;

    3.flex布局子项常见属性

    平分份数:flex:1;

    控制子项自己在侧轴上的排列方式:align-self

    align-self 属性允许单个项目有与其他项目不一样的对齐方式,可覆盖 align-items 属性。(单独设置)

    定义项目的排列顺序 :order

    数值越小,排列越靠前,默认为0。

    相关文章

      网友评论

          本文标题:flex弹性布局

          本文链接:https://www.haomeiwen.com/subject/tvmrnktx.html