浅说flex布局

146 阅读1分钟

flex布局

作用: 基于 Flex 精确灵活控制块级盒子的布局方式,避免浮动布局中脱离文档流现象发生

使用方法:给父级添加display:flex

组成:弹性容器,弹性盒子,主轴侧轴

主轴对齐方式:

justify-content:属性值

常用属性值有以下几种:

  • center=>沿主轴居中排列

image.png

  • space-around=>弹性盒子的两边都有相等的间隙,特点盒子与盒子的间隙是,盒子到容器的两倍

image.png

  • space-between=>弹性盒子沿主轴均匀分布,空白间隙均分在盒子之间

image.png

  • space-evenly=>弹性盒子沿主轴均匀分布,盒子与盒子之间的间隙与盒子到容器之间的间隙相等

image.png

侧轴对齐

align-items 单行对齐方式

flex-start 起点开始依次排列

flex-end 终点开始依次排列

center 沿侧轴居中排列

stretch 默认效果, 弹性盒子沿着侧轴线被拉伸至铺满容器

伸缩比

把父盒子分为若干份数,每个子盒子各占几份。

flex:1; 一定给子盒子加

一定要给子盒子添加。

子盒子默认高度会和父盒子一样高。

圣杯布局

特点:两边的大小固定不变,中间宽度自适应

  • 两边盒子固定大小

  • 中间盒子 flex:1;沾满剩余空间 image.png

    Document   .box{     margin: 100px auto;     display: flex;     justify-content: space-between;     width: 40%;     height: 80px;     background-color: pink;   }   .box span:nth-child(1){     width: 50px;     height: 80px;     background-color: red;   }   .box span:nth-child(3){     width: 50px;     height: 80px;     background-color: red;   }   .box span:nth-child(2){   //中间的盒子沾满剩余的空间     flex: 1;     margin: 0 20px;     background-color: blue;   }
      1   2   3
    ```

主轴方向

方法:flex-direction:属性值

默认主轴是水平方向,侧轴是垂直方向

column 列,垂直

弹性盒子换行

flex-wrap:wrap

多行对齐方式调整:align-content