flex布局
Posted sun-web
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flex布局相关的知识,希望对你有一定的参考价值。
2009年,W3C提出了一种新的布局方案—-Flex 布局,可以简便、完整、响应式地实现各种页面布局。 目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。
一,怎么运用FLEX布局
flex布局非常灵活,任一容器都可以指定为flex布局。块状只需要display属性规定为flex即可。
行内元素也可以指定为flex布局,将display属性设置为inline-flex。 还有WebKit内核的浏览器需要加上-webkit前缀。
需要注意的是设置成为flex布局之后,子元素的float,clear,text-align,vertical-align就会失效。
二,基本概念
采用flex布局的元素就被称为flex容器(flex contain),它的所有子元素称为flex项目(flex item)。
容器默认存在两根轴线,一根主轴(main axis)一根交叉轴(cross axis)。 项目默认沿主轴排列,单个项目占据的主轴空间叫main
size,占据的交叉轴空间叫cross size.
三. FLEX-BOX容器属性
1.flex-direction 决定项目在主轴的排列方向。 2.flex-wrap 决定如果一条轴线排不下了,该如何换行。 3.flex-flow 是flex-direction和wrap的简写形式,默认row nowrap。 4.justify-content 决定项目在主轴方向上如何对齐。 5.align-items 决定项目在交叉轴上如何对齐。 6.align-content 定义多根轴线如何对齐。
四. FLEX项目属性
1.order 决定项目的排列顺序,数值越小,排列越靠前。 2.flex-grow 决定项目的放大比例,默认值是0,也就是存在剩余空间,不放大。 3.flex-shrink 是也就是决定项目的缩小比例,默认是1,表示剩余空间不足时,等比缩小,如果需要不变,可以设置为0。 4.flex-basis 定义了在分配多余项目之前,项目占据的主轴空间。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。它可以设为跟width或height属性一样的值(比如350px),则项目将占据固定空间。 5.flex 是以上三个的简写,默认0 1 auto,也就是不放大,不缩小,占据项目本来大小的主轴空间。该属性有两个快捷值: auto (1 1 auto) 和 none (0 0 auto),这里也不过多赘述。 6.align-self属性 默认auto,继承flex容器,也就是父元素的align-items属性,项目和algn-items一样,只是决定单个item对交叉轴的对齐方式。
flex-basic:定义了在分配多余项目之前,项目占据的主轴空间;
flex-wrap 决定如果一条轴线排不下了,该如何换行。nowrap
| wrap
| wrap-reverse
参考文献:https://blog.csdn.net/qq_27064559/article/details/81871675
以上是关于flex布局的主要内容,如果未能解决你的问题,请参考以下文章