2

div内でspanを使いたい

div は、赤い水平線を配置するために使用されます

<div style="background-color:red;">
</div>

span は div 内で使用され、要素を右に配置します

<div style="background-color:red;">
<span style="float:right;">
ABC
</span>
</div>

しかし、水平線は赤くならず、ABC のみが右に表示され、実際には width:900px のような div スタイルの効果はありません.. ....なぜですか?

4

4 に答える 4

5

私は提案します:

<div style="background-color:red; text-align:right;">ABC</div>

それ以外の場合、元の例のようにoverflow:autoを活用する場合は、divのスタイル定義に追加する必要があります。<span>

乾杯

于 2012-10-23T18:33:17.437 に答える
4

overflow:autodivに追加:

<div style="background-color:red;overflow:auto;">
<span style="float:right;">
ABC
</span>
</div>​

jsFiddleの例

内側のスパンをフローティングすると、divは基本的に折りたたまれ、オーバーフロールールを追加すると、スパンを取り戻すことができます。

于 2012-10-23T18:31:50.340 に答える
2

フロートはdivに高さを与えていません。でフォローアップする必要がありますclear。これを試して:

<div style="background-color:red;">
  <span style="float:right;">
    ABC
  </span>
  <div style="clear: both;"></div>
</div>
于 2012-10-23T18:33:27.457 に答える
-2

プロパティを追加する必要がありますoverflow:hidden。あなたのDIVで。以下にコードについて言及しました:

<div style="background-color:red; text-align:right; overflow:hidden;"> ABC </div>
于 2012-11-05T07:08:20.767 に答える