我连续三个div。第一个应该是固定的,第二个应该扩展直到它达到“最大宽度”,第三个div应该占用剩余的空间。它正常工作,直到第三个div具有到达整个宽度的文本。而不是只是包装它的文本开始使第二个div变小。
<div id="container">
<div id="one">
sdfsdf
</div>
<div id="two">
fghfgh fghfghd sdf sdf sdf ssdf sdf gh
</div>
<div id="three">
sdfsdfsdfsdfsfd sdf sdf sdf sdf sdfwef sdfwefs df
</div>
</div>
#container{
background-color: red;
display: flex;
height: 100px;
width: 400px;
}
#one{
background-color: blue;
flex-grow: 1;
width:60px;
}
#two{
background-color: red;
max-width: 100px
}
#three{
background-color: green;
flex-grow: 1;
}
你可以找到一个jsfiddle here。
答案 0 :(得分:1)
您可以尝试以下代码:
#container {
background-color: red;
display: flex;
height: 100px;
width: 400px;
}
#one {
background-color: blue;
width:60px;
}
#two {
background-color: red;
max-width: 100px
}
#three {
background-color: green;
flex: 1;
}
如果您希望div使用flexbox
占用剩余空格,则可以使用div flex: 1
并为其他div指定宽度。否则,div不会占用剩余的空间。
答案 1 :(得分:0)
您可以尝试在第三个 flex-grow: 1
中添加 div
:
#container {
display: flex;
height: 100px;
width: 400px;
}
#one,
#two,
#three {
flex-grow: 1;
}
#one {
background-color: blue;
}
#container,
#two {
background-color: red;
}
#three {
background-color: green;
}
答案 2 :(得分:0)