私は単純な 2 列のレイアウトを持っています (左の列は固定幅 200px、右の列は 100% 拡張します)。
右の列の最初の要素がP
すべての要素であれば問題ありません。
ただし、右列の最初の要素がINPUT
要素 ( width:100%
) の場合は、下に移動します。
表示される結果は以下のとおりです (Chrome、FF、IE でテスト済み):
INPUT フィールドが次の行に移動するのに、P 要素が移動しない理由を説明していただけますか? そして、これを修正する方法は?
コードは次のとおりです。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<style type="text/css">
body {background-color: #eeeeee;}
div.left {float:left; width:200px; border:1px solid #ff0000;}
div.right { margin-left:200px; border:1px solid #00ff00;}
div.right p, div.right input {width:100%; border:1px dashed #0000ff;}
</style>
</head>
<body>
<div>
<div class="left">
<p>left div</p>
</div>
<div class="right">
<p>I'm a P 100% width inside right div</p>
</div>
</div>
<br>
<div>
<div class="left">
<p>left div</p>
</div>
<div class="right">
<input name="name" type="text" value="I'm an INPUT 100% width inside right div, why i'm down???">
</div>
</div>
</body>
</html>