保证金/对齐问题

时间:2012-01-30 18:29:36

标签: html css

我会尽力解释这个问题;) 基本上,我有一个侧栏<div id="sidebar"></div>,它漂浮在左侧并且有固定的位置。我计划在它之后有另一个包含内容的div,但问题是,因为侧边栏有固定的位置,我期望在它之后(在右侧)的div出现在侧边栏后面。这是一个问题,因为我需要使用margin-left: 310px(310px是侧边栏的宽度)来在侧边栏后面显示另一个div,因此在页面上没有占据100%宽度而没有侧边栏的310px它占据了满页面并导致对齐问题。

很难解释,但是如果您访问我的网页http://freshbeer.lv/development/en/,您可以看到白色div,其中有margin-left: 310px;width: 100%;,其中有一个灰色div {{1} }和width:700px;。我希望灰色div在背景中的2个图像之间的中间对齐,但是由于白色div占用的空间比所需要的多,所以不会发生。有人可以建议一个解决方案吗?

2 个答案:

答案 0 :(得分:3)

也许我误解了您的问题,但在#container中,您可以删除width: 100%或将其更改为width: auto

问题在于它获取父容器的宽度(如果你向后走得足够远,那就是你的浏览器窗口的宽度),然后添加边距。所以它是100%+ 310px。因此它比浏览器窗口宽310px的原因。

答案 1 :(得分:1)

试试这个。首先,确保您的边栏位于脚本中。然后,不要设置主要部分的宽度。相反,只需说出display:block。所以像这样:

<html>
<body>
<div style="width:310px; float:left; background:#dddddd; height:500px;"></div>
<div style="margin-left:310px; display:block; background:#ff0000; height:500px;"></div>
</body>
</html>

在上面的例子中,顶部div是你的侧栏,第二个是你的主体部分。我刚刚添加了高度,以便在测试期间看到列。