これが問題です。シンプルなhtmlテンプレートを取得しました:
<div class="wrapper"><div class="inside">
<div class="left"><p>Lorem ipsum...</p></div>
<aside><p>Lorem ipsum...</p></aside>
<div class="left"><p>Lorem ipsum...</p></div>
<aside><p>Lorem ipsum...</p></aside>
<div class="left"><p>Lorem ipsum...</p></div>
<aside><p>Lorem ipsum...</p></aside>
</div></div>
そしてシンプルなCSS:
div.wrapper {width:1020px;margin:0 auto;}
div.wrapper .inside {padding: 10px;}
div.left {width:700px;background:#EEE;float:left;border-top:1px solid #000; clear: left;}
aside {width:300px;background:#CCC;float:right;border-top:1px solid #000; clear: right;}
すべての div をページの左側に次々と配置し、間隔を空けずに、右側にすべての脇を配置したいと考えています。そして、そこにあります。asides のコンテンツがどれほど高くても、div は正常に機能しています。しかし、任意の div のコンテンツが高すぎる場合、この div と一緒に clear:both のようなものがあったように、サイド間に空のスペースができます。
例:
空のスペースがまったくないように、常に次のように表示する必要があります。
html (divs&asides の順序) を変更することはできません。変更できるのは CSS だけです。html5 と css3 を使用できます。