怀抱清风 2018-08-06
display:box和display:flex区别
答案:没区别,是不同阶段w3c草案命名的不同,
W3C 2009年第1次草案:display:box;
W3C 2011年第2次草案:display:flexbox | inline-flexbox;-
W3C 2012年第5次草案及以后的候选推荐标准:display:flex | inline-flex;
如果想兼容更多浏览器可以,可以这样写:
display: -webkit-box;/* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */ display: -moz-box;/* Firefox 17- */ display: -webkit-flex;/* Chrome 21+, Safari 6.1+, iOS Safari 7+, Opera 15/16 */ display: -moz-flex;/* Firefox 18+ */ display: -ms-flexbox;/* IE 10 */ display: flex;/* Chrome 29+, Firefox 22+, IE 11+, Opera 12.1/17/18, Android 4.4+ */
下面通过一个实例详细介绍一下display:flex弹性布局
假设有一个底部导航条,效果如下:

最终代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no">
<style type="text/css">
* {
padding: 0px;
margin: 0px;
list-style: none;
font-size: 14px;
}
footer {
position: fixed;
left: 0px;
bottom: 0px;
width: 100%;
}
.nav {
display: flex;
height: 50px;
align-items: center;
background: #ccc;
}
li {
flex: 1;
border-right: 1px solid #000;
text-align: center;
}
li:last-child {
border-right: none;
}
</style>
</head>
<body>
<footer>
<ul class="nav">
<li>首页</li>
<li>物流</li>
<li>购物车</li>
<li>更多</li>
<li>我的</li>
</ul>
</footer>
</body>
</html>