テキスト ボックスと送信ボタンの 2 つの要素のみを水平方向に配置する必要がある単純な HTML フォームがあります。
ボタンには背景画像があり、その値を「」に設定したいと思います。
Safari と Firefox では、要素に行の高さを設定すると、配置が維持されます。
ただし、Chrome ではこれだけでは不十分です。value=" " (スペースに注意) を設定するか、別のテキスト値を指定する必要があります。そうしないと、要素がシフトします。
これはHTMLとcssです
<form>
<input type="text" id="email" class="textBox" />
<input type="submit" id="submitSubscribe" class="submitButton" value="" />
</form>
.submitButton{
width:30px;
line-height:30px;
background:url('');
}
.textBox{
line-height:30px;
}
#email{
width:146px;
}
ここに私の jsfiddle があります: http://jsfiddle.net/EmCQJ/5/
値が空白の場合とは異なり、Chrome が value 属性のテキストと異なる配置を計算する理由を知っている人はいますか? 値にそのスペースを残すことは、ハックソリューションのように感じますが、明らかな css 修正をすべて試しましたが、まだ機能しません。どんな入力でも大歓迎です。ありがとう!