弹性布局 flex布局

136 阅读2分钟

flex布局也叫弹性布局

属性:displayflex

添加了df的盒子叫弹性容器。

弹性容器:

 默认宽度就是父元素的宽度,高度由内容撑开。

弹性盒子:

1.是弹性容器最近一级子元素。
2.默认宽度由内容撑开,高度由和父元素保持一致。
3.弹性盒子没有块级元素,行内元素,行内块元素之分。都叫弹性盒子都可以设置宽高。
4.弹性盒子默认不会换行,会沿着主轴方向一行显示。
5.要注意弹性盒子的概念。

主轴对齐方式:添加给弹性容器

写法:justify-content:
属性:
jc  flex-start:默认值,起点开始依次排列。
flex-end:  终点开始依次排列。
jcc  flex-center:沿主轴居中排列。
space-around:弹性盒子沿主轴均匀排列,空白部分均分在弹性盒子两侧。
space-between;弹性盒子沿主轴均匀排列,空白部分均分在相邻盒子之间。
space-evenly:弹性盒子沿主轴均匀排列,弹性盒子和容器之间间距相等。

测轴对齐方式:

属性:align-items
flex-start :默认值,起点开始依次排列
flex-end:终点开始依次排列
center  :沿侧轴垂直居中排列
stretch:默认值,弹性盒子沿主轴线被拉伸至铺满容器

控制某个弹性盒子;

align-self: 是给需要单独控制侧轴方向对齐方式设置的。

伸缩比:flex 给弹性盒子添加

   1.所有的弹性盒子都添加相同的flex值,均分弹性容器的宽度;如果flex值不同,根据比例进行分配
   2.其他的盒子宽度固定,只有一个盒子设置了flex:1 --- 占据父元素剩余的宽度

使用flex-direction修改主轴方向

这个值的作业:主轴方向变为垂直,侧轴方向变为水平

注意点:现在主轴和侧轴只是方向调换了主轴依然还是用jc改变对齐方式,侧轴还是用ai改变对其方式。
属性
row  默认为行,水平
column 列,垂直
row-reverse行,从右到左
column-reverse:列,从下往上

弹性盒子换行flex-wrap

弹性盒子换行显示flex-wrap:wrap;

调整行对齐方式:align-content:要出现必须先出现换行
取值与justify-content 侧轴属性基本相同

控制单行的侧轴排列方式
align-items   flex-start  flex-end center  sh