【1分鐘知識點】利用「佔位塊」彌補 space-between 的不足

效果先行

需求

4007646450-59ace24cf093b_articlex

在大量「不定寬」元素並排的佈局模式下,上圖是咱們想要的最佳佈局 可是FlexBox佈局雖然槍彈但並不能徹底呈現以上佈局,因而咱們須要結合FlexBox做下小的改動便可實現。css

css現成的佈局方式

Flex佈局,具備等分佈局的能力,如圖html

2944464332-59ace26b45117_articlex

問題

可是底部咱們並不想如此等分,咱們更但願能夠同上一排對齊git

方案

其實很簡單,咱們只要在後面加入一些等寬可是佔高爲0等隱藏元素便可輕鬆實現。 如圖:github

274284754-59ace27b269cb_articlex

至於【empty】元素的數量須要不小於單行最多元素的數量便可, 最後咱們將empty設置隱藏便可佈局

.empty {
    visibility: hidden; 
}
複製代碼

完整demo代碼

【codepen 演示地址】flex

codepen.io/zwwill/pen/…spa

<html>
<head>
    <meta charset="UTF-8">
    <title>並排等分,單排靠左最齊佈局</title>
    <style type="text/css"> * { margin: 0; padding: 0; } .main { display: flex; width: 1000px; flex-flow: row wrap; justify-content: space-between; margin: 50px auto; background-color: #ccc; align-content: baseline; } .main span { width: 132px; height: 200px; display: inline-block; background-color: #666; margin: 4px; } .main .emp{ height: 0; border: none; margin-top: 0; margin-bottom: 0; visibility: hidden; } </style>
</head>
<body>
    <div class="main">
        <span style="">1</span>
        <span style="">2</span>
        <span style="">3</span>
        <span style="">4</span>
        <span style="">5</span>
        <span style="">6</span>
        <span style="">7</span>
        <span style="">8</span>
        <span style="">9</span>
        <span style="">10</span>
        <span style="">11</span>
        <span style="">12</span>  
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
        <span class="emp" >empty</span>
    </div>
</body></html>
複製代碼

轉載請標明出處code

做者: 木羽 zwwillcdn

首發地址:zwwill/blog#28htm

相關文章
相關標籤/搜索