这是一个非常简单的问题……乍一看。并且在第二个不是那么简单。:-/
有两个 div:#content 和 #sidebar(按此顺序!),它们包含在 div #main 中。#content div 可能有很长的表格或字符串,并且不能裁剪它们或增加自身的宽度,因此不允许溢出:隐藏和任何类型的流。#sidebar div 可能高于#content。#main div的高度必须是内部最高div的高度,所以“position: absolute; top: 0;” 因为#sidebar 不是解决方案。
问题:是否可以在#content div 的左侧设置一个#sidebar div,同时不对#content 使用任何类型的浮动并将所有div 完全保留在#main 内?
我在这里做了一个说明:http: //jsfiddle.net/dZLmu/
HTML
<div id="main">
<div id="content">
<p>It's a content area. It can contain a very long
tables or strings which must not be cropped by
overflow: hidden and must no extend a width of
div itself. Something like that:</p>
<p>WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW</p>
</div>
<div id="sidebar">
<p>It's a sidebar.</p>
<p>It can be higher then content area.</p>
<p>Menu item #.</p>
<p>Menu item #.</p>
<p>Menu item #.</p>
<p>Menu item #.</p>
<p>Menu item #.</p>
<p>Menu item #.</p>
</div>
<div id="clearfix"></div>
</div>
CSS
#main {
background-color: silver;
margin: 0 auto;
widht: 500px;
#position: relative;
}
#content {
background-color: green;
margin-left: 100px;
}
#sidebar {
background-color: red;
float: left;
width: 100px;
#position: absolute;
#top: 0;
}
#clearfix {
clear: both;
}