请查看演示:http://jsfiddle.net/7wwobsqq/1/
我的问题是父元素计算它的宽度时,没有注意到这些块在不同的行上。
那么对于这个例子,我希望父元素被缩小到块的最大宽度。此外,如果子元素能够放在一行上,它们应该在那里。 为了帮助你理解我的意思,请看截图: http://s21.postimg.org/ioldq2blj/stack_Overflow.jpg 目前我使用的是ul->li元素,而不是div,但在这种情况下它们的行为是相同的。
感谢您的评论。
以下是额外的示例。在第一个案例中,我们看到两个元素对齐。在第二个案例中,第二个子元素向下移动,因为父元素有最大宽度。我们在右侧得到了空白空间。 屏幕截图 - http://s4.postimg.org/p4h4bj86l/stack_Overflow2.jpg http://jsfiddle.net/7wwobsqq/8/ http://jsfiddle.net/7wwobsqq/9/
<div class="parent">
<div class="child"></div>
<div class="child"></div>
</div>
.parent {
max-width: 300px;
background: grey;
overflow: hidden;
}
.child {
float: left;
width: 200px;
height: 200px;
border: 1px solid #000;
margin-bottom: 10px;
}
我的问题是父元素计算它的宽度时,没有注意到这些块在不同的行上。
那么对于这个例子,我希望父元素被缩小到块的最大宽度。此外,如果子元素能够放在一行上,它们应该在那里。 为了帮助你理解我的意思,请看截图: http://s21.postimg.org/ioldq2blj/stack_Overflow.jpg 目前我使用的是ul->li元素,而不是div,但在这种情况下它们的行为是相同的。
感谢您的评论。
以下是额外的示例。在第一个案例中,我们看到两个元素对齐。在第二个案例中,第二个子元素向下移动,因为父元素有最大宽度。我们在右侧得到了空白空间。 屏幕截图 - http://s4.postimg.org/p4h4bj86l/stack_Overflow2.jpg http://jsfiddle.net/7wwobsqq/8/ http://jsfiddle.net/7wwobsqq/9/
<ul class="parent">
<li class="child first">
</li>
<li class="child second">
</li>
</ul>
.parent {
border: 1px dashed #ccc;
float: left;
min-width: 333px;
max-width: 500px;
overflow: hidden;
}
.child {
margin: 2px;
float: left;
display: inline-block;
background-color: rgb(255, 216, 87);
}
.first {
width: 126px;
height: 127px;
}
.second {
width: 207px;
height: 122px;
}