どのように私は次のコードで水平に整列するラベルを取得することができますラベルのアライメント
div {
display: table;
width: 200px;
}
div input,
div label {
display: table-cell;
}
<div>
<input type="checkbox">
<label>This is a label.</label>
</div>
<div>
<input type="checkbox">
<label>This is a label with a longer text.</label>
</div>
参照:https://jsfiddle.net/a7t3qnbg/1/
編集:より明確にすると:私は固定幅を変更することはできませんし、ラベルをチェックボックスと同じ行で開始し、横線(改行後も)に並べるようにします。
ありがとう、簡単な解決策。あなたはなぜそれが幅を設定せずに動作しない私に説明することはできますか? – DrRumpus
'width'を設定しないと、ブラウザは行内のすべてのテーブルセルの間に 'スペア'スペースを割り当てます。最初の行にはスペアスペースがあり、ブラウザは入力を含むテーブルセルにビットを割り当てました。 注:あなたの場合、それぞれの 'div'は独自の' table'を作成します。**は**テーブル行ではありません。実際にテーブルレイアウトを取得しようとしている場合は、 'table'レイアウトのラッパーコンテナが必要です。代わりに' div'sを 'display:table-row'に変更してください。 'width:100%'ルール。 – searlea