我是一个非常原始的例子,有两个display: inline-block
div并排。由于某些原因max-width
不适用于这些div,这些div会获得内容大小,而不是整个max-width
大小。
这里是完整的HTML和CSS。谁能理解这种奇怪的max-width行为?
如果不设置常量#left
,如何使#right
和max-width
消耗width
?我正在进行重新设计。
#left {
display: inline-block;
max-width: 100px;
background-color: yellow;
vertical-align: top;
}
#right {
display: inline-block;
max-width: 300px;
background-color: green;
vertical-align: top;
}

<div class="body">
<div id="left">
content left
</div>
<div id="right">
content right
</div>
</div>
&#13;
答案 0 :(得分:0)
即使内容小于最大宽度,您知道如何使#left和#right消耗
max-width
吗?不使用宽度恒定宽度?
我不确定这是否符合您的需求,但flexbox
可能正是您所寻找的。 p>
.body {
display: flex;
border:1px solid red;
}
#left {
flex: 0 1 100px;
max-width: 100px;
background-color: yellow;
}
#right {
flex: 0 1 300px;
max-width: 300px;
background-color: green;
}
<div class="body">
<div id="left">
content left
</div>
<div id="right">
content right
</div>
</div>
注意:#left
和#right
可以根据需要缩小,但flex-basis
将初始宽度设置为指定值,max-width
设置上限。