2011-04-12 122 views
1

我试图让div wrapper围绕它内部的所有div,这取决于wrapper的高度将会增长的内容数量。CSS高度:100%问题

我猜想这样做的方法是设置height: 100%,但正如您从下面的屏幕截图中可以看到的,情况并非如此。

Screengrab of height:100% issue

凡说“不:-(”是有height: 100%是做理想的地方,我想wrapper是在底部的地方说,“是的”,我已经绘制的红线是什么。

任何帮助深表感谢。

+2

你的代码在哪里?还是一个现场示例?除非你有一些奇怪的重置CSS,否则Div会增长以适应默认的内容。尝试使用'height:auto;' – Kyle 2011-04-12 10:17:57

+0

要使'height:100%'起作用,其上的所有元素也必须设置高度。另外,如果容器中有任何浮动元素,则需要使用clearfix等解决方案来获得其真实高度。如果您可以发布代码,则可以有更明确的答案。 – 2011-04-12 10:22:09

+0

@Kyle你可以看看这里的代码:http://dev.tim-morgan.co.uk/other/copy/index.html :-) – Tim 2011-04-12 10:31:16

回答

2

如果您正在使用浮动,给容器溢出:隐藏可能会解决问题。如果没有给div赋予固定的大小,这将使它延伸到浮动元素上。

如果你在容器中有绝对定位的元素,最好能看到解决方案的html/css。

+0

你知道吗,我想这可能是答案。我会让你知道我如何继续。谢谢:-) – Tim 2011-04-12 10:32:59

+0

overflow:隐藏功能基本上与将clearfix添加到容器底部的功能基本相同。它只是不需要添加HTML。 – Marcus 2011-04-12 10:56:04

0

你可以发布一个链接的CSS? 这使我想起的是包装内部的div的位置属性的第一件事情,如果它们被设置为浮动或绝对它们不会被包含在包装中,这是打算的编辑行为。 即这里是约含浮动一篇好文: http://complexspiral.com/publications/containing-floats/

如果象是可能的,这就是问题所在,你可以相对位置里面的div或者,如果您使用的浮筒,可以添加一个不可见的在包装结束处显示小时,如下所示:

<div id="wrapper"> 
      /*All divs to be contained here*/ 
      <hr style="display:block;clear:left;visibility:hidden;"> 
</div> 

清除:left;是什么摆脱了以前的元素的“浮动”。应该根据你的花车改变'左'。 更多在上面的文章中,这是我最喜欢的方法。

+0

你可以看看这里的代码:http: //dev.tim-morgan.co.uk/other/copy/index.html :-) – Tim 2011-04-12 10:31:38

+0

它看起来像你有浮在各地:)尝试添加人力资源或马库斯的解决方案。 – 2011-04-12 10:44:47