私はcalc()
を使用して、兄弟要素の幅を引いた後に入力の有効幅を測定しています。CSS3のcalc()関数が正しく動作しない
<div class="containero">
<button class="noey">No</button>
<input class="inpoot" />
<button class="yeso">Yes</button>
</div>
私は次のCSSを持っています。
.containero {
width: 100%;
background-color: yellow;
display: inline-block;
box-sizing:border-box;
}
.noey, .yeso {
border: 1px solid red;
width: 30px;
height: 30px;
text-align: center;
vertical-align: middle;
display:inline-block;
color: red;
padding:0px;
box-sizing:border-box;
}
.inpoot {
height: 31px;
margin: 0 5px;
display:inline-block;
width: calc(100% - 70px);
box-sizing:border-box;
}
は、今私は、アカウントに兄弟の両方のための30px
のwidhtを取るcalc(100% - 70px);
にその幅を設定した場合、私の計算ごとに、要素.inpoot
は素晴らしく、居心地の良いに収まる必要があり、その後、10px
の独自のマージン。しかし、私の全く驚いたことに、人生は簡単ではない期待どおりに動作しません。最後の兄弟、.yeso
が次の行にプッシュされています。
しかし!!! .inpoot
の幅をcalc(100% - 82px)
に設定すると、それは機能しますが、私は神の美しい地球上でどこから来ているのでしょうか?
マイグッドネス!!!それは1つの卑劣な小さなバグでした! :)ありがとう、親切な紳士。 –
@MohdAbdulMujibバグはありませんが、機能です。インライン要素間のスペースは物理的に存在します。それはそのスペースを取る。それはバグではなく、インターネットに沿って広がっています。インラインブロックとスペースについて検索します。がんばろう! –
この回答を正しいと確認できます。ありがとうございました! :) –