给出以下HTML:
<div id="wrapper">
<div id="header">*header*</div>
<div id="content">*content*</div>
<div id="footer">*footer*</div>
</div>
以下CSS:
#wrapper {
min-height:100%;
position:relative;
}
* {margin:0;padding:0;height:100%;}
#header {
width:100%;
height:auto;
margin-top: 0;
}
#content {
width:100%;
height: auto;
margin:0;
margin-top:0;
margin-bottom:0;
}
#footer {
width:100%;
height:auto;
position:absolute;
margin-top: 0;
margin-bottom: 0;
bottom:0;
left:0;
}
内容与页脚的div之间存在差距。如何设置内容的高度必须是页眉和页脚之间的所有空格?
页脚必须将“绝对”位置放在页面底部。
答案 0 :(得分:3)
尝试使用display:table
,table-row
选项
display:table
至#wrapper
display:table-row
至#header
,#content
(此处宽度和高度应为100%)和#footer
#wrapper {
min-height:100%;
position:relative;
display: table;
width:100%
}
#header {
width:100%;
height:auto;
margin-top: 0;
background:#dbfcd6; display: table-row;
}
#content {
width:100%; display:table-row; background:green; height:100%
}
#footer {
width:100%;
height:auto;
position:absolute;
margin-top: 0;
margin-bottom: 0;
bottom:0;
left:0; background:yellow;
display: table-row;
}
<强> DEMO 强>
答案 1 :(得分:0)
这是因为你的页脚有一个底部:0并且它的位置是绝对的。这会使它卡在底部。
你应该像这样给你的内容一个最小高度和最大高度:
#content {
background-color:red;
width:100%;
min-height:450px;
max-height: auto;
margin:0;
margin-top:0;
margin-bottom:0;
}
然后将页脚的位置更改为relative
看看这个小提琴:)Check me!