美文网首页
Flex布局

Flex布局

作者: 七_五 | 来源:发表于2017-08-17 23:28 被阅读0次

    在传统的布局方案中,是基于盒模型的,一般使用display+position+float属性,对于一些特殊的布局中,如水平垂直居中就比较麻烦,CSS居中可参考我之前的一篇文章CSS居中

    1、Flex布局基本概念

    • Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。

    若要设置一个容器为flex布局只需要在其样式加上display: flex就行

    flex布局

    这里主要注意main axis(水平主轴)和垂直的侧轴(cross axis),中间的三个为flex container容器内的子元素。

    2 、容器的属性

    • flex-direction: row | row-reverse | column | column-reverse; // 决定主轴的方向
    • flex-wrap: nowrap | wrap | wrap-reverse //换行
    • flex-flow //上面两者属性综合
    • justify-content: flex-start | flex-end | center | space-between | space-around //项目在主轴上的对齐方式
    • align-items: flex-start | flex-end | center | baseline | stretch; //定义项目在侧轴上如何对齐。
    • align-content //定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。

    3、项目的属性

    • order: <integer> //定义项目的排列顺序。数值越小,排列越靠前,默认为0
    • flex-grow: <number> //定义项目的放大比例,默认为0
    • flex-shrink: /* default 1 */ //flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小
    • flex-basis :/* default auto */ //定义了在分配多余空间之前,项目占据的主轴空间(main size)
    • flex //flex-grow, flex-shrink 和 flex-basis的简写
    • align-self //允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性

    参考资料:
    http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
    http://www.ruanyifeng.com/blog/2015/07/flex-examples.html
    MDN Flex

    相关文章

      网友评论

          本文标题:Flex布局

          本文链接:https://www.haomeiwen.com/subject/naqorxtx.html