我试图让我的页脚位于页面底部,页面顶部的页眉和页面中间的部分。但我得到的只是页面顶部显示的红色页脚。背景包装应该是灰色的,但也不起作用。请帮忙。谢谢。
这是css:
body {
margin: 0 auto;
}
#wrapper {
position: relative;
background-color: gray;
height: 100%;
width: 100%;
}
header {
position: absolute;
top:0;
width: 100%;
height: 20px;
background-color: red;
}
section {
position: absolute;
width: 100%;
height: 100px;
margin-top: auto;
margin-bottom: auto;
}
footer {
position: absolute;
bottom: 0;
width: 100%;
height: 20px;
background-color: blue;
}
下面是html的主体:
<body>
<div id="wrapper">
<header>
</header>
<section>
</section>
<footer>
</footer>
</div>
</body>
答案 0 :(得分:1)
只需将其添加到html / body:
html, body {
height: 100%;
}
答案 1 :(得分:1)
您必须使用position: absolute;
。当在像这样的父元素中使用时,它往往会弄乱你的所有间距。 section
部分将放置在header
部分正上方,因为它根本没有放置。
尝试仅提供section
最小高度并删除position
属性。
希望这有帮助。
答案 2 :(得分:0)
你很亲密。替换<body>
的CSS定义:
html, body{
margin: 0 auto;
width: 100%;
height: 100%;
}
答案 3 :(得分:0)
在您的代码中的以下课程中进行此操作:
html {
height: 100%;
}
body{
margin: 0 auto;
height: 100%;
}
section{
position: absolute;
width: 100%;
height: 100px;
top:20px;
}
<强> DEMO 强>
答案 4 :(得分:0)
从页眉,页脚和部分中删除绝对位置。我想可能就是这样。