display:table スタイルを使用して、最初の入力に項目を追加して、2 つの入力要素を隣り合わせに配置しようとしています。ただし、これにより、2 番目の入力要素が最初の入力要素と重なってしまいます。box-sizing: border-box を使ってみましたが、うまくいきませんでした。問題は、親 div の幅を制限してから、親を埋めるために入力要素の幅を 100% に設定しているようですが、これはまったく機能しません。JSfiddle の例を次に示します。
HTML
<div class="container">
<div class="row">
<div class="cell input-prepend">
<span class="add-on">HI</span>
<input type="text" />
</div>
<div class="cell">
<input type="number"/>
</div>
</div>
</div>
CSS
@import url('http://twitter.github.com/bootstrap/assets/css/bootstrap.css');
.container {
margin-top: 10px;
}
.row {
display: table-row;
width: 100px;
}
input[type=text] {
width: 100%;
}
.cell {
display: table-cell;
}
目標は、テキスト入力の各インスタンスに同じ幅ではない可能性のあるラベルがある上記のような一連の行を取得することです。そのため、テキスト入力がすべて整列していることを確認する何らかの方法が必要です。たぶん、先頭に追加された要素の使用をあきらめて、そのために別の div を使用する必要がありますか?