CSSフローティングを(頭の中で)動作させるのに苦労しています。
次の例に注意してください。
<style type="text/css">
div.container {
width:500px;
}
div.left {
float:left;
clear:left;
}
div.right {
float:right;
}
</style>
<div class="container">
<div class="left">leftdata 1</div>
<div class="left">leftdata 2</div>
<div class="right">rightdata 1</div>
<div class="right">rightdata 2</div>
<div class="right">rightdata 3</div>
<div class="right">rightdata 4</div>
</div>
これにより、次の出力が得られます。
+---------------------------------------------------------------- -------------------+ | | 左データ 1 | | | leftdata 2 rightdata 1 rightdata 2 rightdata 3 rightdata 4 | | | | | +---------------------------------------------------------------- -------------------+
しかし、私はこれを期待していました:
+---------------------------------------------------------------- -------------------+ | | leftdata 1 rightdata 1 rightdata 2 rightdata 3 rightdata 4 | | | 左データ 2 | | | | | +---------------------------------------------------------------- -------------------+
明確な理由: 左; クリアも?
私の目標:
clear:right; のみを追加したい class: right でマークされた DIV に。これにより、次のようになります。
<style type="text/css">
div.left {float:left;clear:left;}
div.right {float:right;clear:right;}
</style>
+---------------------------------------------------------------- -------------------+ | | 左データ 1 右データ 1 | | | 左データ 2 右データ 2 | | | 右データ 3 | | | 右データ 4 | +---------------------------------------------------------------- -------------------+