我正在尝试获取输入以获取此flexbox中的所有可用空间,但不会超出Flexbox的宽度。
<div>
<input type="number"/>
<button>OK</button>
</div>
div
{
display:flex;
width:100px;
position:relative;
border:solid 1px #000;
}
input
{
flex:1;
display:block;
border:none;
}
问题是输入溢出了包含的flexbox div。如果我将输入的宽度设置为100%,它似乎在Chrome中有效但在FF中失败。该怎么做?
答案 0 :(得分:5)
这是因为输入的默认宽度大于100px
。将min-width:0
添加到输入中以解决此问题:
div
{
display:flex;
width:100px;
position:relative;
border:solid 1px #000;
}
input
{
flex:1;
display:block;
border:none;
min-width:0;
}
&#13;
<div>
<input type="number">
<button>OK</button>
</div>
&#13;
答案 1 :(得分:-2)
你不需要把它变成弹性盒子。
你可以这样做:
<div>
<input></input>
</div>
<style>
div{
width: 100px;
}
input{
min-width:100%;
margin: 0px;
}
</style>