フィールドセットのラベル テキストの横にテキスト入力を表示しています。テキスト入力のテキストのベースラインをラベル テキストのベースラインに合わせたいと思います。要素にファッジ ファクターpadding-top
を設定することはでき.label
ますが、要素のコンテンツに.value
読み取り専用のテキストが含まれている可能性があり、これらのフィールドのラベル/値のベースラインの配置が台無しになります。また、ブラウザごとに入力フィールドの高さが異なるため、ブラウザごとに異なるファッジ ファクターが必要になるのではないかと思います。
ラベルと入力テキストのベースラインを揃える方法を知っている人はいますか? 私のラベルテキストは複数の行にまたがる可能性があるため、これを考慮に入れるソリューションが必要です。
http://jsbin.com/enobe3で次のコードの実例を見ることができます。
CSS
* {
font-family: sans-serif;
font-size: 13px;
}
.field {
clear: left;
padding-top: 5px;
}
.label {
float: left;
width: 90px;
}
.value {
margin-left: 90px;
padding-left: 10px;
}
HTML
<fieldset>
<div class="field">
<div class="label">A short label</div>
<div class="value">Some text</div>
</div>
<div class="field">
<div class="label">A long long long long long long long wrapping label</div>
<div class="value">Some text</div>
</div>
<div class="field">
<div class="label">A short label</div>
<div class="value"><input value="Some text"/></div>
</div>
<div class="field">
<div class="label">A long long long long long long long wrapping label</div>
<div class="value"><input value="Some text"/></div>
</div>
</fieldset>