float:leftとfloat:rightを使って、ブロックを左右に振り分けます。
ブロック1
ブロック2
ブロック3
となり、ブロック3が文字だけの表示になっていたり、ブロック1の文字も低位置ではないようです。
これはブロック2のfloat:rightが有効になったままブロック3を表示しようとしているからで、ブロック3にclear:right(またはboth)を指定します。
ブロック1
ブロック2
ブロック3
となります。
ただ、この方法だとfloat属性をクリアしている要素を削除したり、修正するとレイアウトが崩れてしまう危険があるので、float属性をクリアするだけの要素を作ってブロック2の後に追加する方法を推奨します、
ブロック1
ブロック2
ブロック3
となります。
ここで使った要素は次のようなdiv要素です。
<div style=”clear:both; display:none;”></div>