Div高度100%并扩展以适应内容

我的页面上有一个div元素,其高度设置为100%。 身体的高度也设置为100%。 内部div有一个背景,所有这一切,不同于身体背景。 这适用于使div高度达到浏览器屏幕高度的100%,但问题是我在该div内的内容超出了浏览器屏幕高度的垂直范围。 当我向下滚动时,div终止于您必须开始滚动页面的位置,但内容超出了该范围。 我如何让div始终走到底部以适应内容?

这是我的CSS的简化:

body {
    height:100%;
    background:red;
}

#some_div {
    height:100%;
    background:black;
}

一旦我滚动页面,黑色结束,内容流入红色背景。 似乎无论我在#some_div上是将相对位置还是绝对位置设置为位置,都会出现问题。 #some_div内的内容绝大部分都是绝对定位的,并且它是从数据库动态生成的,因此其高度无法预先知道。

编辑:这是一个问题的截图: div问题


这里是你应该做的CSS样式,在主div

display: block;
overflow: auto;

不要碰height


height设置为auto并将min-height100% 。 这应该可以解决大多数浏览器的问题。

body {
  position: relative;
  height: auto;
  min-height: 100% !important;
}

通常这个问题出现在Parent Div的Child元素被浮动时。 这是问题的最新解决方案

在你的CSS文件中,写下下面的类,叫做.clearfix以及伪选择器:after

.clearfix:after {
content: "";
display: table;
clear: both;
}

然后,在您的HTML中,将.clearfix类添加到您的父级Div。 例如:

<div class="clearfix">
    <div></div>
    <div></div>
</div>

它应该始终工作。 您可以将类名称称为.group而不是.clearfix,因为它会使代码更加语义化。 请注意,不需要在双引号“”之间的内容值中添加点或甚至空格。 另外, 溢出:自动; 可能会解决问题,但它会导致其他问题,如显示滚动条,不推荐。

资料来源:Lisa Catalano和Chris Coyier博客

链接地址: http://www.djcxy.com/p/15503.html

上一篇: Div height 100% and expands to fit content

下一篇: How to make a div fill a remaining horizontal space?