flex:前端弹性盒子布局浏览器兼容

本文详细介绍了CSS中的flex布局,包括如何设置父元素为弹性盒子、子元素的平均分配空间、水平和垂直排列、换行、居中等关键属性的使用方法,覆盖了旧版本和新版本的浏览器兼容性解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/* 父元素-flex容器 */
.flex {
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+ */
}

/* 子元素-平均分栏 */
.flex1 {
-webkit-box-flex: 1;              /* OLD - iOS 6-, Safari 3.1-6 */
-moz-box-flex: 1;                 /* OLD - Firefox 19- */
-webkit-flex: 1;                     /* Chrome */
-ms-flex: 1;                           /* IE 10 */
flex: 1;                                   /* NEW, Spec - Opera 12.1, Firefox 20+ */
}
/* 父元素-横向排列(主轴) */
.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+ */
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值