Css 将div设置为100%高度,但内容在div末尾下方流动
几天来,我一直在努力让页面使用CSS和div。基本上,我需要一个顶部带有徽标/横幅广告的报头,然后是一个三列布局的导航、主要内容和附加的侧边内容,然后以页脚结束页面 我将需要设置一个背景色,并在三个内容列周围放置一个1像素的边框,以便在它们周围有一个包装div。而且这三列可能也需要有自己的背景色 我的目标是使三个内容栏的高度相同,并根据需要增长。但是,如果我在其中一个页面上添加了大量内容,内容就会溢出到页脚下面。我在这方面做了很多搜索,尝试了各种高度和最小高度的组合,但仍然无法让它工作 我已经把HTML和CSS放在了一起,并在WinXP的FF3中截取了屏幕 整理后的代码也在这里:Css 将div设置为100%高度,但内容在div末尾下方流动,css,Css,几天来,我一直在努力让页面使用CSS和div。基本上,我需要一个顶部带有徽标/横幅广告的报头,然后是一个三列布局的导航、主要内容和附加的侧边内容,然后以页脚结束页面 我将需要设置一个背景色,并在三个内容列周围放置一个1像素的边框,以便在它们周围有一个包装div。而且这三列可能也需要有自己的背景色 我的目标是使三个内容栏的高度相同,并根据需要增长。但是,如果我在其中一个页面上添加了大量内容,内容就会溢出到页脚下面。我在这方面做了很多搜索,尝试了各种高度和最小高度的组合,但仍然无法让它工作 我已经把
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
html, body {
height:100%;
}
body, td, p {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:11px;
}
#content_wrapper{
width: 980px;
margin: 0 auto;
border:1px solid #3300FF;
background:#FFFF66;
min-height:100%;
height:100%;
}
#middlecol{
float:left;
min-height:100%;
height:100%;
background:grey;
width:540px;
}
#leftcol{
float:left;
min-height:100%;
background:green;
width:170px;
}
#rightcol{
float:right;
min-height:100%;
background:#66FFCC;
width:250px;
}
#header_wrapper {
width: 980px;
margin: 0 auto;
border:1px solid #FF0000;
clear:both;
margin-bottom:8px;
}
#footer_wrapper {
width: 980px;
margin: 0 auto;
border:1px solid #000000;
clear:both;
margin-top:8px;
}
</style>
<title>test </title>
</head>
<body>
<div id="header_wrapper"><h1>logo/ad</h1></div>
<div id="content_wrapper">
<div id="rightcol"><h1>RHS column</h1></div>
<div id="leftcol"><h1>LHS</h1></div>
<div id="middlecol"><h1>Main content column</h1></div>
</div>
<div id="footer_wrapper"><h1>footer</h1></div>
</body>
</html>
试一试
我在各种项目中使用过它,效果非常好。没有问题,内容包装器在屏幕上占了100%,但在顶部和底部都有其他元素。这意味着100%+n px 删除页眉和页脚,您将自己看到。您应该将所有内容包装在一个div中,并将height设置为100%和overflow:hidden,但这很危险 您还需要在顶部添加此规则,因为某些元素(如body)在默认情况下具有边距/填充
*{margin:0;padding:0;}
请注意,边框将高度/宽度添加到总高度/宽度,因此即使边框为1px,也始终具有垂直滚动,即100%+1px
感谢Dustin Laine修复了我的代码引用,我正试图找出答案!嗨,谢谢。我只是尝试删除页眉和页脚,结果相同。我了解边界。虽然中间的列将有一个,但头/脚上的边框只是一个临时的东西,以查看发生了什么。嗨,马克,这似乎需要内容向左或向右浮动-如果我需要它居中并达到特定宽度980,它会工作吗?你应该能够将列所在的容器居中。