と要素が指定され、両方とも<select>
200px幅に指定されています。<input>
<!doctype html>
<body>
<select style="width: 200px"></select><br/>
<input style="width: 200px" type="text">
</body>
<html>
一方は他方よりも1、2、3、4広くなります。
これの理由は何ですか?
誰かが理由を説明できれば、おそらく解決策は明らかであり、ハックアンドプレイではありません。
レイアウト
適用されたレイアウトは完全に合理的です。
更新 1 : この質問を書いている間に、Chrome は17から19に更新されました。
更新 2:パディングを<input>
1からゼロに変更する:
<!doctype html>
<body>
<select style="width: 200px"></select><br/>
<input style="width: 200px; padding: 0" type="text">
</body>
<html>
幅が<input>
200pxになりません (つまり、修正されません)。
更新 3: CSS リセットの適用:
<!doctype html>
<head>
<style type="text/css">
* {
padding: 0;
margin: 0;
}
</style>
<body>
<select style="width: 200px"></select><br/>
<input style="width: 200px; padding: 0" type="text">
</body>
<html>
問題を解決しません:
また、私は説明よりも解決策に興味がありません。
脚注
- 1,2,3 Chrome
1719、Firefox、Internet Explorer 9 - Windows 7 64 ビットでは4
ボーナスリーディング
- <option> を IE6 で <select> より広くするには? (オプションを選択よりも広くしたくない、IE6を使用していない)
- 選択リストに拡張オプションを表示するには? (ドロップダウンの幅はコントロールの幅と一致します)
- Containing Div よりも幅の広い HTML 入力要素(ここには含まれていません
<div>
) - HTML入力要素を並べるには?