詳解CSS經(jīng)典布局之Sticky footer布局

何為Sticky footer布局?
我們常見的網(wǎng)頁布局方式一般分為header(頁頭)部分,content(內(nèi)容區(qū))部分和footer(頁腳)部分。當(dāng)頁頭區(qū)和內(nèi)容區(qū)的內(nèi)容較少時(shí),頁腳區(qū)不是隨著內(nèi)容區(qū)排布而是始終顯示在屏幕的最下方。當(dāng)內(nèi)容區(qū)的內(nèi)容較多時(shí),頁腳能隨著文檔流撐開始終顯示在頁面的最下方。這就是傳說中的Sticky footer布局。是不是很容易理解。不理解的小伙伴也沒關(guān)系下面我就舉個(gè)簡單的例子。
舉個(gè)栗子
當(dāng)內(nèi)容較少時(shí),正常的文檔流顯示如下圖:
在正常文檔流中,當(dāng)內(nèi)容較少時(shí),頁腳部分不會始終固定在屏幕的最下方。這時(shí)候就該讓傳說中的sitcky footer布局出現(xiàn)了。
sticky footer布局效果如下圖所示:
不管內(nèi)容區(qū)有多少內(nèi)容,頁腳始終顯示在屏幕的最下方,當(dāng)內(nèi)容區(qū)域超過屏幕的高度時(shí)。頁腳會始終顯示在頁面的最底部。現(xiàn)在小伙伴們徹底認(rèn)識sticky footer的真面目了吧,下面讓我們一起看看它是如何實(shí)現(xiàn)的。
Sticky footer布局實(shí)現(xiàn)
負(fù)margin布局方式
html代碼:
<div class="detail"> <div class="wrapper clearfix"> <div class="title"> <h1>這里是頭部</h1> </div> <div class="main"> <p>這里是main content區(qū)域...</p> <p>這里是main content區(qū)域...</p> <p>這里是main content區(qū)域...</p> <p>這里是main content區(qū)域...</p> </div> </div> <div class="footer"> <p>© 2017 No rights reserved.</p> <p>Made with ♥ by an anonymous pastafarian.</p> </div> </div>
css代碼:
div,h1,p{margin:0; padding: 0;} .detail{ position:fixed; overflow:auto; width:100%; height:100%; } .wrapper{ min-height:100%; width:100%; } .title h1{ font-size:40px; text-align: center; } .main{ margin-top:64px; padding-bottom:64px; } .main p{ font-size: 25px; text-align: center; } .footer{ margin:-64px auto 0 auto; font-size:32px; } .footer p{ text-align: center; } .clearfix::after { display: block; content: "."; height: 0; clear: both; visibility: hidden; }
注:main里的 padding-bottom和footer里的負(fù)margin值要保持一致。
flex布局方式
html代碼:
<header> <h1>Site name</h1> </header> <div class="main"> <p>Bacon Ipsum dolor sit amet...</p> <p>Bacon Ipsum dolor sit amet...</p> <p>Bacon Ipsum dolor sit amet...</p> <p>Bacon Ipsum dolor sit amet...</p> </div> <footer> <p>© 2017 No rights reserved.</p> <p>Made with ♥ by an anonymous pastafarian.</p> </footer>
css代碼:
body{display: flex; flex-flow: column; min-height: 100vh; overflow:auto;} h1{font-size: 60px; text-align: center;} p{font-size: 24px; text-align: center;} .main{flex:1;}
flex布局結(jié)構(gòu)簡單,代碼精簡。因?yàn)閒lex存在著兼容性,所以在使用這種方式布局時(shí)需要注意。
小結(jié)
到這里我們的本次探討就結(jié)束了,希望對小伙伴們能有幫助。這也是我第一次記錄博客,有不夠完整的地方希望各位大佬多多包涵,給予指導(dǎo)。sticky footer布局也是css中比較經(jīng)典的布局,對初學(xué)者來說應(yīng)該熟悉掌握這種布局。當(dāng)然用的多了自然也就會了。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
CSS Sticky Footer 幾種實(shí)現(xiàn)方式
這篇文章主要介紹了CSS Sticky Footer 幾種實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)2019-06-05CSS Sticky Footer實(shí)現(xiàn)代碼
這篇文章主要介紹了CSS Sticky Footer實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-12-05CSS實(shí)現(xiàn)Sticky Footer的示例代碼
這篇文章主要介紹了CSS實(shí)現(xiàn)Sticky Footer的示例代碼的相關(guān)資料,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-24- 這篇文章主要介紹了詳解Sticky Footer 絕對底部的兩種套路,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-03
css sticky footer經(jīng)典布局的實(shí)現(xiàn)
這篇文章主要介紹了css sticky footer經(jīng)典布局的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)2020-03-02