使页脚被内容推离页面,但在不是整页内容时停留在底部

Posted

技术标签:

【中文标题】使页脚被内容推离页面,但在不是整页内容时停留在底部【英文标题】:Make footer get pushed off page by content but stay at bottom when not full page content 【发布时间】:2013-08-02 15:11:13 【问题描述】:

我有一个页脚,我想一直停留在页面底部,但是当例如内容填充页面页脚不会向下移动它只是悬停在文本上。问题是内容仅开始在小窗口和低分辨率显示器上滚动。所以我需要页脚留在页面底部没有填充的内容,然后在窗口很小时被内容推出

图片:http://imgur.com/oS7HBUc - 页脚悬停在内容上而不是被向下推,但是滚动条出现并且当我滚动时页脚停留在那里

这是我的 CSS:

`
html, body 
        margin:0;
        padding:0;


#container 


#spacer 
        height: 10px;
        background-color: #24246B;


@font-face 
        font-family: palatino;
        src: url('font/palatino.ttf');


@font-face 
        font-family: footer;
        src: url('font/footer.ttf');


.fb_widget 
    float: right;
    margin-right: 10px;


#header, #nav, article, section, body, #mail_success 
        font-family: palatino;



#header 
    margin-top: 1%;
    text-align: center;


/*  font-size: 60px;
    color: #F2E6FF;
    border: solid #24246B;
    background-color: #24246B;
    width: 25.5%;
    border-right-color: #4610B3;
    border-right-width: 25px;
    border-left-width: 15px;
    margin-top: 2%;
    text-align: right;*/



#nav ul 
    margin-top: 2%;
    line-height: 30px;
    font-size: 17px;
    text-align: center;
    background-color: #24246B; 


#nav ul li 
    display: inline;


#nav ul li a 
    text-decoration: none;
    color: #F2E6FF;
    padding: 7px 2% 6px 2%;
    font-weight: bold;
    border-radius: 20%;

    /* This makes it fade colour*/
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition:. 5s;
    -webkit-transition: .5s;
    transition: .5s;


#nav a:hover 
    color: #24246B;
    background-color: #F2E6FF;
    border-radius: 20%;


body 
    background-image: url('media/bg.png');
    padding-bottom: 60px;
    height: 100%;
    max-height: 100%;



article 
    color: #24246B;
    margin-left: 20%;
    margin-right: 20%;
    font-size: 20px;
    font-weight: bold;


section 
    font-weight: normal;
    font-size: 15px;
    text-align: justify;
    padding-left: 2%;


form 
    padding-left: 7%;
    font-size: 19px;


input 

    height: 25px;
    width: 300px;
    font-size: 14px;



.contact_submit 
    width: 110px; 
    margin-right: 50%;
    margin-left: 42%;


label 
    text-align: right;
    float: left;
    display: block;
    width: 260px;
    font-weight: bold;


label:after 
    content: "..";
    color: transparent;


#push 
    height: 4em;


footer 
    font-family: footer;
    color: #cccccc;
    font-size: 8px;
    text-transform: uppercase;
    font-style: italic;
    position: absolute;
    bottom: 0px;
    width: 100%;


footer p
    text-align: center;



footer:hover 

    /* This makes it transition*/
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition:. 5s;
    -webkit-transition: .5s;
    transition: .5s;
    color: #24246B;
    font-size: 12px;


#mail_success 
    text-align: center;
    padding: 7%;
    font-size: 17px;
    font-weight: bold;


@media screen and (max-device-width: 640px) 
    #logo 
        display: none;
    
'

以及页脚的 HTML:

'   </div>
    <p></p>
        <footer>
            <p>&copy;2013 Built by Rob Calcroft</p>
            <p>Designed by Akash Bharadia &amp; Rob Calcroft</p>
        </footer>
    </body>
</html>

'

【问题讨论】:

在 google 上搜索“sticky footer”。你会发现很多例子。 你见过this 吗?希望有帮助! Make div stay at bottom of page's content all the time even when there are scrollbars的可能重复 【参考方案1】:

在您的 html 中,您有 &lt;footer&gt; 和 css footer some-code

这不应该是 id(如果每页使用一次 onyl)或类(如果每页使用多次)吗?

.footer

#footer

然后

<div id="footer">text</div>

【讨论】:

使用 &lt;footer&gt; 完全没问题,因为它是 HTML5 的一部分。除非您必须支持旧版浏览器,否则这是行不通的。然后使用 ID 为 #footer 的 div 就可以了。

以上是关于使页脚被内容推离页面,但在不是整页内容时停留在底部的主要内容,如果未能解决你的问题,请参考以下文章

页面内容不足时如何使页脚移至底部

无法使页脚转到页面底部

当您有不同高度的页面时,如何使页脚位于所有屏幕尺寸的底部?

如何阻止翻转效果将其他元素推离它?

如何在具有网格布局的空/整页上强制页脚位于页面底部

如何使页脚视图始终位于 UITableViewController 的底部?