flex box 布局特点

492 阅读3分钟

布局原理:flex是flexible Box的缩写,意为:“弹性布局”,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为flex布局。
当我们为父盒子设为flex布局以后,子元素的float,子元素的float、clear和vertical-align属性将失效。
伸缩布局=弹性布局=伸缩盒布局=弹性盒布局=flex布局
采用flex布局的元素,称为flex容器,简称:“容器”,它的所有子元素自动成为容器成员,称为flex项目,简称项目。
父盒子的常用属性:\

flex-direction:设置主轴方向;\
justify-content:设置主轴上子元素排列方式\
flex-wrap:设置子元素是否换行\
align-content:设置侧轴上子元素的排列方式(多行)\
align-items:设置侧轴上子元素的排列方式(单行)\
flex-flow:复合属性,相当于同时设置了flex-direction和flex-wrap\
**justify-content:设置主轴上子元素的排雷方式** \
*使用前确认好主轴方向*   \  

image.png
flew-wrap设置子元素是否换行
默认情况下,项目都排在一条线(又称:“轴线”)上,flex-wrap属性定义,flex布局中默认是不换行的.
image.png
align-items设置侧轴上的子元素排雷方式(单行)
该属性是控制子项在侧轴(默认是y轴)上的排列方式,是在子项为单项的时候使用。
image.png
align-content设置侧轴上子元素的排雷方式(多行)
设置子项在侧轴上的排列方式并且只能用于子项出现换行的时候(多行),在单行下式没有效果的。
align-content和align-items的区别
align-items适用于单行的情况下,只有上对其、下对齐,居中和拉伸
align-content适用于换行(多行)的情况下(单行情况无效),可以设置上对齐、下对齐、居中、拉伸和平局分配剩余空间等属性
总结就是单行找align-items,多行找align-content
align-content和align-items的区别 align-items适用于单行的情况下,只有上对其、下对齐,居中和拉伸
align-content适用于换行(多行)的情况下(单行情况无效),可以设置上对齐、下对齐、居中、拉伸和平局分配剩余空间等属性
总结就是单行找align-items,多行找align-content
image.png
flex-flow属性是flex-direction和flex-wrap属性的复合属性
flex-flow:row wrap;
总结
image.png
flex布局子项常见属性\

flex子项目占的份数\
align-self控制子项自己在侧轴的排列方式\
order属性定义子项目的排列顺序(前后顺序)\
flex属性:定义子项目分配剩余空间,用flex来表示占多少份数\
语法:.item ( flex: <number>;  /*  default 0  */}\
align-self控制子项自己在侧轴上的排列方式\
align属性允许单个项目有与其它项目不一样的对齐方式,可覆盖align-items属性,默认值为auto,表示继承父元素的align-items属性,\
如果没有父元素,则等同于stretch. \

语法: span:nht-child(2){ align-eslf: flex-end;}
order属性定义项目的排列顺序:数值越小,排列越靠前,默认为0;注意:和z-index不一样。 以上就此本次的flex box 内容分享,大家的鼓励,是我输出的动力。一起加油啊!