float
実際、これを達成するための適切なプロパティです。ただし、bmatthews68 の例は改善することができます。フローティング ボックスで最も重要なことは、明示的な幅を指定する必要があることです。これはかなり不便かもしれませんが、これが CSS の仕組みです。px
ただし、これは HTML/CSS の世界には存在しない測定単位であり、少なくとも幅を指定しないことに注意してください。
常に、異なるフォント サイズで動作する手段に頼ってください。つまり、em
またはを使用します%
。ここで、メニューがフローティング ボディとして実装されている場合、これはメイン コンテンツがその「周り」に浮かぶことを意味します。メイン コンテンツがメニューよりも上にある場合、これは望ましくない可能性があります。
float1 http://page.mi.fu-berlin.de/krudolph/stuff/float1.png
<div style="width: 10em; float: left;">Left</div>
<div>Right, spanning<br/> multiple lines</div>
margin-left
メイン コンテンツをメニューの幅と同じにすることで、この動作を修正できます。
float2 http://page.mi.fu-berlin.de/krudolph/stuff/float2.png
<div style="width: 10em; float: left;">Left</div>
<div style="margin-left: 10em;">Right, spanning<br/> multiple lines</div>
ほとんどの場合、メイン コンテンツにも a を付けたいと思うpadding-left
ので、メニューに密着しすぎないようにします。
ところで、メニューが左側ではなく右側に表示されるように上記を変更するのは簡単です。「左」という単語をすべて「右」に変更するだけです。
ああ、最後にもう 1 つ。メニューのコンテンツがメイン コンテンツよりも高い場合、奇妙なことを行うため、レンダリングが奇妙になりますfloat
。その場合、bmatthews68 の例のように、フローティング ボディの下にあるボックスをクリアする必要があります。
/編集: くそー、プレビューが示したように HTML が機能しません。まあ、代わりに写真を含めました。