用flex实现css里的三大经典布局,不需要额外很多代码。
<div id="parent"> <div id="child"></div> </div>
#parent { /* align-content和align-items必须配合使用 */ display: flex; justify-content: center; align-content: center; align-items: center; width: 300px; height: 300px; outline: solid 1px; } #child { width: 100px; height: 100px; outline: solid 1px; }
<div id="parent"> <div id="child" style="height: 300px;"></div> <div id="child"></div> </div>
#parent { display: flex; justify-content: center; align-content: center; /* stretch让盒子内的每个元素的高度都等于行高 */ align-items: stretch; width: 300px; } #child { width: 100px; outline: solid 1px; }
<div id="parent"> <div id="child1"></div> <div id="child2"></div> </div>
#parent { display: flex; width: 300px; height: 200px; background-color: pink; } #child1 { flex: 1; /* 即使设置100px宽,还是会占据剩余的所有宽度 */ width: 100px; background-color: lightblue; } #child2 { width: 100px; outline: solid 1px; }