概述
弹性盒模型概念
Flex容器:采用Flex布局的元素的父元素;
Flex项目:采用Flex布局的元素的父元素的子元素;容器默认存在两根轴:水平的主轴和垂直的交叉轴;项目默认按主轴排列。
Flex容器的属性(添加在父级元素上的)
1、display:flex;
注意:设为flex布局后,子元素的float、clear和vertical-align属性将失效。
2、flex-direction属性 决定主轴的方向(即项目的排列方向)
flex-direction:
X轴
row (默认值)
row-reverse (水平排列,内容末端排列,类似右浮动)
Y轴
column (垂直排列,顶端对齐)
column-reverse (垂直排列,内容相反,底端对齐)
3、flex-wrap 属性,定义子元素是否换行显示
flex-wrap:
nowrap(默认值,不换行)
wrap(自动换行)
wrap-reverse(自动换行,内容反转)
4、flex-flow是属性flex-direction和flex-wrap的简写方式,默认值为row nowrap;
5、justify-content属性定义了项目在主轴上的对齐方式。
justify-content:
flex-start;(默认值)
flex-end;(内容整体底部对齐)
center;(内容整体居中)
space-between;(两端对齐)
space-around;(自动分配)
6、align-items属性定义项目在交叉轴(侧轴)上如何对齐。
align-items:
flex-start(侧轴顶端对齐)
flex-en(侧轴底端对齐)
center(居中对齐)
baseline(基线对齐,默认跟flex-start等效,元素高度由padding撑开,基线按内容对齐)
strech(拉伸(默认值),默认内容不设置高度)`
7、align-content属性定义了多根轴线的对齐方式。对于单行子元素,该属性不起作用。
align-content:
flex-start (取消内容行间距,顶部对齐)
flex-end (取消内容行间距,底部对齐)
center (取消内容行间距,顶部对齐)
space-between (两端对齐)
space-around (自动分配)
Flex项目属性(添加在子元素上的)
1、order属性
order属性定义项目的排列顺序。数值越小,排列越靠前,默认为0。
2、flex-grow属性
flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
如果所有项目的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他项多一倍。
3、flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
如果所有项目的flex-shrink属性都为1,当空间不足时,都将等比例缩小。如果一个项目的flex-shrink属性为0,其他项目都为1,则空间不足时,前者不缩小。
负值对该属性无效。
4、flex-basis=width属性
flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。
5、flex属性
flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto。
6、align-self属性
align-self: auto | flex-start | flex-end | center | baseline | stretch;
转载于:https://juejin.im/post/5d3ae97d518825477162b6bb
最后
以上就是威武黄蜂为你收集整理的Flex 弹性盒模型属性的全部内容,希望文章能够帮你解决Flex 弹性盒模型属性所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复