0

div内にあるフォームがあります。そのフォームの下にテーブルを配置して、結果を表示します。問題は、ブラウザでフォームコードの後に​​タグを書き込むと、フォームの下ではなくフォームの右側に表示されることです。私は何をしなければなりませんか?これはCSSのものですか?これがhtmlコードとCSSです:

<div style="width:55%;height:auto;margin-right:0px;" class="BuscarCliente">
  <form class="buscarForm" name="buscarClienteForm" method="get">
       <label class="formTitle">Buscar Cliente</label>
       <br><br>
       <label class="buscarForm">Ingresa el nombre del cliente a buscar:</label><br>
       <input class="buscarForm" style="width:200px;margin-top:7px;"type="text" name="nombre_cliente"><br><br>
       <input class="buscarForm" type="button" value="Buscar Cliente" onClick="JAVASCRIPT:form.submit()">
    </form>  

   <br><br><span>THIS STUFF SHOULD BE BELOW</span>
</div>

これはcssです

form.buscarForm{
   color:#486288;
   font-family: 'Source Sans Pro', Helvetica, sans-serif;
   font-size:16px;
   font-weight: 200;
   margin-left:35px;
   margin-top: 15px;
   float: left;
}
4

2 に答える 2

4

cssfloat: left;ルールは、フォームをフロートとしてレイアウトするようにブラウザに指示します。大きすぎて収まらない場合を除いて、その後に続くものはすべて右側に表示されます。そのルールが不要な場合は削除できます。または、clear: both;cssルールを使用して次の要素のスタイルを設定する必要があります。

さらに、タグはデフォルトでインラインで表示されるため、ルール <span>を持つフロートフォームの後にブロック要素を追加する必要もあります。は一般的なブロック要素です。clear: both;<div>

これを行う1つの方法は次のとおりです。http://jsfiddle.net/HgWgT/

于 2013-02-06T21:04:12.727 に答える
1

テーブルの次の要素に追加style="clear: both;すると、左側に表示されます。

于 2013-02-06T21:05:12.220 に答える