移动web——day3—下

141 阅读2分钟

Flex布局

  • Flex 是 Flexible Box 的缩写,意为"弹性布局";

作用

  • 是浏览器提倡的布局模型,布局简单,灵活,可以避免浮动布局脱标的问题;
  • Flex布局非常适合结构化布局

设置方式

  • 给父元素添加 display: flex,即可开启父元素的flex布局, 其内部的子元素可以自动的挤压或拉伸;
  • 任何一个盒子都可以开启弹性布局;

组成部分

  • 弹性容器 (父元素);
  • 弹性盒子 (子元素);
  • 主轴;
  • 侧轴 / 交叉轴;
  • image.png

主轴对齐方式

  • justify-content: 调节元素在主轴的对齐方式;

语法:

  • 属性名: justify-content

取值:

image.png

侧轴对齐方式

  • align-items: 调节元素在侧轴的对齐方式

语法:

  • 属性名: align-items添加到弹性容器)

取值:

image.png

侧轴扩展

  • align-self: 控制单个弹性盒子在侧轴的对齐方式;

语法:

  • 属性名: align-self (添加到弹性盒子)
  • 属性值: 与align-items的取值相同:
  • flex-start (起点)
  • center (居中)
  • flex-end (终点)

伸缩比

  • 使用flex属性修改弹性盒子伸缩比,使用flex的伸缩比 可快速获取父容器剩余尺寸

使用方式:

  • 属性名: flex
  • 属性值: 数值(整数)
  • 示 例: flex:1
  • 父盒子里的flex值总数代表分为多少份,每个项目的flex代表占几份。

flex注意点

  1. 块级元素作为弹性盒子时:
  • 宽度由默认的父级100%, 变成由自身内容撑开;
  1. 行内元素作为弹性盒子时:
  • 由默认的不能直接设置大小, 变为可以直接设置大小并生效;
  1. 行内元素作为弹性容器时:
  • 由默认的不能直接设置大小, 变为可以直接设置大小并生效

flex修改主轴方向

  • flex-direction: 修改主轴方向, 实现更多需求下的结构化布局

语法:

  • 属性名: flex-direction
  • direction[方向]

取值:image.png

弹性盒子换行

  • 实现弹性盒子多行排列效果

语法:

  • 弹性盒子允许换行 : flex-wrap: wrap;
  • wrap[换行]
  • 换行以后, 多了一个行与行之间的对齐方式;

行之间的对齐方式align-content

  • align-content:调整行对齐方式;

取值:

  • 取值与justify-content(主轴对齐方式) 基本相同;