CSS Flex弹性布局实现Div
前言
前端样式开发时经常会遇到:当子 DIV 长度大于 父 DIV 中需要实现换行时,我们采取flex布局解决此问题。
代码如下:
<!-- 将所有 app 装在 application 内 --> <div class="application"> <div class="app"> <div class="icon"></div> <div class="name">打开应用</div> </div> <div class="app"> <div class="icon"></div> <div class="name">打开应用</div> </div> <div class="app"> <div class="icon"></div> <div class="name">打开应用</div> </div> <div class="app"> <div class="icon"></div> <div class="name">打开应用</div> </div> <div class="app"> <div class="icon"></div> <div class="name">打开应用</div> </div> </div> </div>
样式代码如下
.application { width: 1100px; height: 500px; display: flex; /* flex-flow是lex-direction和 flex-wrap的简写形式,如:row wrap|column wrap-reverse等。默认值为row nowrap,即横向排列 不换行 */ /* !!!!! 该步骤实现 子 div 换行 !!!!!*/ flex-flow: row wrap; /* !当主轴沿水平方向时!justify-content,决定item在主轴上的对齐方式,可能的值有flex-start(默认),flex-end,center,space-between,space-around */ justify-content:center; } .application .app { margin-left: 170px; width: 160px; height: 170px; position: relative; } .application .app .icon { width: 125px; height: 125px; /* icon在 app 中水平居中 */ margin: 0 auto; background: url("../../../assets/zdws/application.png"); background-size: 100% 100%; } .application .app .name { width: 100%; height: 50px; line-height: 50px; text-align: center; font-size: 20px; font-family: Source Han Sans CN; font-weight: 500; color: rgba(255, 255, 255, 1); }