2 つの Div がフォームに入る
次のようになります。
<form>
<div id="top">
<label>Gimme a Number:<input type="number" /></label><br />
<label>Gimme a Word:<input type="textarea" /></label><br />
<label>Now tell me how you feel about HTML forms: <textarea rows="4" cols="50"></textarea></label><br />
</div>
<div id="bottom">
<label>Gimme a Number:<input type="number" /></label><br />
<label>Gimme a Word:<input type="textarea" /></label><br />
<label>Now tell me how you feel about HTML forms: <textarea rows="4" cols="50"></textarea></label><br />
</div>
</form>
absolute
すべてのフォーム フィールドを配置するいくつかの CSS がありleft
、プリンシパルのフィドルはこちらです (ステップ 1)
そこで、改行を追加して最初の問題を修正しました(ステップ 2 のフィドル)。
これは、2 つの理由から理想的なソリューションではありません。1 つは DOM の余分な要素です。底にtextarea
スチルが溢れ出すdiv
。
私が試したさまざまなclearfixの回答が(主に他のSOの質問から)機能しなかったときに、次を挿入して一時的なハックを見つけました:
<hr class="clearfix" /><br />
2 つの間に挿入hr
visibility:hidden
し、CSS で を指定します。
これで私のページでは機能しましたが、ここ (ステップ 3)でわかるように、実際には機能しません。私のページのフォームでは、div
の背景が透明で、ユーザーが満足できるように十分に離れています。これはイントラネット注文フォーム (電話からも使用されます) であり、SV スタートアップ Web アプリケーションではないため、私は今のところ本番環境のままにしておいてよかったのですが、結局、これを行う正しい方法は何でしたか?
div.top
を含む完全なコンテンツを含めるにはどうすればよいtextarea
ですか? を使用して要素に対して多くの「移動」ソリューションを試しましたfloat
が、予想どおり、 が編集されていないため機能しませtextarea
んfloat
。
理想的には、余分な<br>
sを捨てて、<div>
すべての要素を手動で配置したり、ページに複雑さを追加したりすることなく、 s に実際にコンテンツを含めるようにしたいと考えています。どんなアイデアでも大歓迎です。