我试图让一个动态大小的边栏浮动在我的网页的右上部分(但低于标题和导航栏),并使页面上的主要内容流动它(除了“L”的底部部分非常厚外,有一种“L”形状)。侧栏的宽度和高度因页面而异,因此我无法使用任何硬性值。IE7与我的浮动边栏不能很好玩
我的CSS是这样的:
#main {
width: 850px;
height: auto;
}
#sidebar {
width: auto;
float: right;
}
(加上一些填充,保证金和背景颜色代码,我认为是无关紧要的)
我的HTML看起来像:
<div id="wrapper">
<div id="header"> /* header stuff */ </div>
<div id="nav"> /* nav stuff */ </div>
<div id="sidebar">
/* my sidebar content, really just an h3 and a ul */
</div>
<div id="main">
/* lots of content here */
</div>
</div>
我不不完全理解为什么我必须首先使用sidebar div,但是它的代码在FF,Chrome,Safari(Windows)和IE8中运行良好。但在IE7(和IE6,我不关心)中,主要内容会被推到侧栏下方,就好像侧栏div上有一个“clear:left”(但没有) 。
我有一种感觉,这是邪恶的IE7违规错误之一,特别是因为IE8的行为完全像其他浏览器。但我不知道如何解决它。
任何想法? TIA。
我的文档类型:<!DOCTYPE html PUBLIC“ - // W3C // DTD XHTML 1.0 Strict // EN”“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> 感谢div订购的解释。 – user249493 2009-06-05 02:31:40