zoukankan      html  css  js  c++  java
  • 前端笔记(flex弹性布局的整体总结)

    flex弹性布局是为了css2中不好实现的特殊布局的。

    块级元素flex(均写在容器上)

    display: flex;

    行内元素flex

    display: inline-flex;

    填于父元素的属性:

    flex-direction //主轴的方向
    flex-wrap //主轴换行方式
    flex-flow //direction和wrap的简写方式
    justify-content //主轴的对齐方式
    align-items //交叉轴的对齐方式
    align-content //多轴线的对齐方式
    flex-direction和flex-wrap是可以取正反方向reverse的

    做浏览器兼容:

    父元素-横向排列(主轴)

    .flex-h {
        display: box;              /* OLD - Android 4.4- */
        display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
        display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
        display: -ms-flexbox;      /* TWEENER - IE 10 */
        display: -webkit-flex;     /* NEW - Chrome */
        display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
        /* 09版 */
        -webkit-box-orient: horizontal;
        /* 12版 */
        -webkit-flex-direction: row;
        -moz-flex-direction: row;
        -ms-flex-direction: row;
        -o-flex-direction: row;
        flex-direction: row;
    }

    父元素-横向换行

    .flex-hw {
        /* 09版 */
        -webkit-box-lines: multiple;
        /* 12版 */
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    父元素-水平居中(主轴是横向才生效)

    .flex-hc {
        /* 09版 */
        -webkit-box-pack: center;
        /* 12版 */
        -webkit-justify-content: center;
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        justify-content: center;
        /* 其它取值如下:
            align-items     主轴原点方向对齐
            flex-end        主轴延伸方向对齐
            space-between   等间距排列,首尾不留白
            space-around    等间距排列,首尾留白
         */
    }

    父元素-纵向排列(主轴)

    .flex-v {
        display: box;              /* OLD - Android 4.4- */
        display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
        display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
        display: -ms-flexbox;      /* TWEENER - IE 10 */
        display: -webkit-flex;     /* NEW - Chrome */
        display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
        /* 09版 */
        -webkit-box-orient: vertical;
        /* 12版 */
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        flex-direction: column;
    }

    父元素-纵向换行

    .flex-vw {
        /* 09版 */
        -webkit-box-lines: multiple;
        /* 12版 */
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    父元素-竖直居中(主轴是横向才生效)

    .flex-vc {
        /* 09版 */
        -webkit-box-align: center;
        /* 12版 */
        -webkit-align-items: center;
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        align-items: center;
    }

    子元素-显示在从左向右(从上向下)第1个位置,用于改变源文档顺序显示

    .flex-1 {
        -webkit-box-ordinal-group: 1;   /* OLD - iOS 6-, Safari 3.1-6 */
        -moz-box-ordinal-group: 1;      /* OLD - Firefox 19- */
        -ms-flex-order: 1;              /* TWEENER - IE 10 */
        -webkit-order: 1;               /* NEW - Chrome */
        order: 1;                       /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }

    子元素-显示在从左向右(从上向下)第2个位置,用于改变源文档顺序显示

    .flex-2 {
        -webkit-box-ordinal-group: 2;   /* OLD - iOS 6-, Safari 3.1-6 */
        -moz-box-ordinal-group: 2;      /* OLD - Firefox 19- */
        -ms-flex-order: 2;              /* TWEENER - IE 10 */
        -webkit-order: 2;               /* NEW - Chrome */
        order: 2;                       /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }

    子元素-平均分栏

    .flex1 {
        -webkit-box-flex: 1;      /* OLD - iOS 6-, Safari 3.1-6 */
        -moz-box-flex: 1;         /* OLD - Firefox 19- */
        width: 20%;               /* For old syntax, otherwise collapses. */
        -webkit-flex: 1;          /* Chrome */
        -ms-flex: 1;              /* IE 10 */
        flex: 1;                  /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }
    博客园作者:herry菌,原文链接:

    朋友,看到这里,关注作者的公众号吧,不漏掉更新哦

  • 相关阅读:
    软件工程结课作业
    十三次作业
    十二次作业
    十一次作业
    十次作业
    找回感觉的练习
    CSS背景样式和列表样式
    盒子模型案例应用
    display属性
    margin外边距属性
  • 原文地址:https://www.cnblogs.com/wuhairui/p/12781354.html
Copyright © 2011-2022 走看看