這可能以前曾被問到過,但我無法找到正確的搜索條件。使浮動元素佔用空間
我有一大堆浮動元素,它們看起來有點像這樣:
(CodePen)
這是令人滿意的。不幸的是,我有一個新的要求,這意味着用戶可以動態更改各個元素的高度。
(CodePen)
正如你所看到的,這些元素開始高大元素的右邊堆放,最終溢出並留下左邊一個空隙之前。
(CodePen)
這比浮動元素更好,但仍然有很多未使用的空間。此外,我必須小心避免在這些內聯元素之間的DOM中使用空格,以避免添加額外的空格。這非常煩人。
我希望它看起來更像是這個有點:
我寧願一個純CSS的解決方案,但我願意使用JavaScript,如果我不得不這樣做。
下面的代碼產生在這篇文章中,情況CodePen是不可訪問的第二圖像:
HTML:
<div class="container">
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated height">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
<div class="floated">
</div>
</div>
CSS:
.container {
width: 1200px;
}
.floated {
float: left;
box-sizing: border-box;
padding: 10px;
height: 50px;
margin: 10px;
width: 200px;
}
.floated::after {
content: ' ';
display: block;
height: 100%;
width: 100%;
background: red;
}
.height {
height: 150px;
}
你可以將它構造爲列嗎? – Stickers
有趣的想法。不幸的是,我不能,閱讀順序的元素必須左右上下。 –