flex布局

  flex是什么?

    flexBox 可以为你文章里面的元素提供高效的布局、对齐禾空间的分配方式;即使当你的文档元素的视区和尺寸是动态的或者未知的。

二  缺点:

具有兼容性

三 基本概念

 弹性容器      :设置了display:flex的父元素

弹性盒子元素:包含在弹性容器中的子元素

四 用法:

.flex-container {

display: flex;

//display:inline-flex-(成为内联元素)

}

注意:以下属性均默认主轴为水平方向,交叉轴为垂直方向,使用flex容器内元素,即子元素的float,clear、vertical-align属性将失效。

五 弹性容器的属性:

1 .flex-direction  (子元素排列的方向)

  row:水平方向,从左至右排列(默认)

  row-reverse:水平,从右至左排列

  column:竖直方向,上至下排列

       column-reverse:竖直,从下至上排列

2、flex-wrap    决定当排列不下时是否换行以及换行的方式

  nowrap:排列在一条线上,自动缩小项目,不换行(默认)

  wrap:换行,第一行在上

  wrap-reverse:换行,第一行在下

3、justify-content(决定item在水平方向上的对齐方式)

  flex-start:左对齐

  flex-end:右对齐

  center:居中对齐

  space- between:两端对齐

  space-around:沿轴线均匀分布

4、align-items(决定item在垂直方向上的对齐方式)

  flex-start:顶端对齐

  flex-end:底部对齐

  center:竖直方向上居中对齐

  baseline:子元素第一行文字的底部对齐

  stretch:当子元素未设置高度时,item将和容器等高对齐

5、align-content(垂直方向上有多个子元素------>对子元素整体进行操作-----比较有用

   注意:定义了align-content后,align-items属性将失效。

      flex-start:顶部对齐

      flex-end:底部对齐

      center:居中对齐

      space- between:上下两端对齐

      space-around:垂直方向上均匀分布

      stretch:伸展占满整个盒子---(n列等高对齐

6、flex-flow:是flex-direction和flex-wrap的简写形式,默认值为row nowrap,即横向排列 不换行。

六、子元素属性

 1、order :值是整数,默认为0,整数越小,子元素排列越靠前

    2、flex-grow:定义了当flex容器有多余空间时,子元素是否放大。

                          默认值为0,即当有多余空间时也不放大;

                          值为整数,表示不同子元素的放大比例(即占据空间比例)

   3、flex-shrink:定义了当容器空间不足时,item是否缩小。

                  默认值为1,表示当空间不足时,item自动缩小,

                          值为整数,表示不同item的缩小比例(即占据空间比例)。

                          与flex-grow相反

 4、flex-basis:表示项目在主轴上占据的空间,默认值为auto。

        值为npx;类似于width/height,固定宽高的属性

   5、flex:是flex-grow、flex-shrink和flex-basis三属性的简写总和。

 6、align-self:允许子元素在垂直方向上有自己独特的对齐方式,默认值为auto

      auto:和父元素align-self的值一致

      flex-start:顶端对齐

      flex-end:底部对齐

      center:竖直方向上居中对齐

      baseline:子元素第一行文字的底部对齐

      stretch:当子元素未设置高度时,子元素将和容器等高对齐

 

 

posted @ 2018-07-19 21:30  青橙娃娃  阅读(71)  评论(0编辑  收藏  举报