2012-01-30 131 views
0

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

这很难解释,但如果你访问我的网页http://freshbeer.lv/development/en/你可以看到白色的div,它具有margin-left: 310px;width: 100%;里面有一个灰色的分度width:700px;margin: 0 auto;。我期望灰色div在背景中的2张图像中间对齐,但是由于白色div占用的空间比需要的更多,所以不会发生。任何人都可以提出解决方案吗?

+0

你试过添加图片吗? – CoffeeRain 2012-01-30 18:35:13

回答

3

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

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

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> 

在上面的例子中,顶格是你的身边吧,第二你的主体部分。我只是添加了高度,以便在测试期间看到列。