如何在没有绝对的情况下附加div到底?

时间:2012-06-14 22:12:03

标签: html css css3

所以我有一个页脚:

<div id="footer" >
    <div style="padding:20px;">
        Footer
    </div>
</div>

哪个是样式包装器:

#page { width:964px; margin:0 auto; }

所以我需要将页脚div附加到浏览器的底部。问题是如果我添加:

position:absolute;
bottom:0;

前面的一些div与页脚相交,我需要自己设置高度和宽度。

demo

3 个答案:

答案 0 :(得分:6)

试试这样..

CSS

html, body {
    height: 100%;
}
.wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -142px; /* the bottom margin is the negative value of the footer's height */
}
.footer, .push {
    height: 142px; /* .push must be the same height as .footer */
}

HTML

<div class="wrapper">
    <p>wrapper text here</p>    
    <div class="push"></div>
</div>

<div class="footer">
    <p>footer text here.</p>
</div>

答案 1 :(得分:1)

This并不完全符合您的要求,但这是我使用position: fixed执行的类似实现。

对于您要实现的目标,您需要使用position: absolute来实现目标。然后你必须手动给出元素的高度以使其适合。当您在footer内有内容时,可以使用padding来完善形状。

这是唯一可行的选择。要么fixed定位,要么absolute定位。

答案 2 :(得分:-1)

使用:

#footer {
    position: fixed;
    bottom: 0;
}

了解position:如何运作

,这是一个很好的article