【发布时间】:2015-08-31 17:57:45
【问题描述】:
我已经创建了 25 个随机宽度和高度的框,其中width == height(如图所示)
$(document).ready(function(e) {
for (var count = 0; count < 5; count++) {
for (var iter = 0; iter < 5; iter++) {
$(".content").append("<div id='" + count + "_" + iter + "' class='box'><p>" + count + "_" + iter + "</p></div>");
$(".content div:last").width(Math.round((Math.random() * 100) + 50));
$(".content div:last").height($(".content div:last").width());
}
}
});
.box {
background: #FF0004;
margin: 10px;
float: left;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<div class="content">
</div>
</body>
我试图更好地理解浮动属性逻辑以及浮动元素相互“堆叠”时定位背后的原因。例如(取自小提琴的截图):
是什么让3_3在屏幕变大后重新定位到下图的位置?
根据 W3Schools:
如果您将多个浮动元素一个接一个地放置,如果有房间,它们将彼此相邻浮动。
所以问题是,“room”是什么意思,控制浮动元素位置的逻辑是什么?
这个 SO 帖子的答案:CSS Float explanation 似乎是相关的,但它似乎并不能解释为什么浮动元素会停在某个位置。
【问题讨论】: