怎么固定底部內容? – css筆記

    這種布局方式在后臺管理系統中比較常見,當我們內容不足瀏覽器窗口高度時,底部內容需要固定在底部。當內容超出了瀏覽器窗口高度,就會隨著內容往后推

    這種是一個非常常見的布局方式,但是對于新手來說是比較常見的難題。

    這種布局方式在后臺管理系統中比較常見,當我們內容不足瀏覽器窗口高度時,底部內容需要固定在底部。當內容超出了瀏覽器窗口高度,就會隨著內容往后推。

    在有CSS3之前,實現這個效果是頗有難度的。瀏覽器窗口高度是會根據不同用戶打開瀏覽器的情況,屏幕大小的差異和瀏覽器的縮放比例而變。我們需要借助JavaScript來實時獲取瀏覽器高度進行運算才能實現。雖然說標題是說“固定”底部,但是我們想要的效果不是position: fixed。使用固定定位,在內容高于窗口高度時,就會擋住我們的內容。

    隨著CSS3的來臨,最完美的實現方式是使用Flexbox。實現的關鍵就是使用不太被關注的flex-grow屬性,可以在我們的內容標簽元素(比如div)中使用。在我們下面的例子里使用了main標簽。


    我來講解一下實現原理吧。

    怎么固定底部內容? - css筆記

    flew-grow是用來控制一個flex元素相對它同等級flex元素的自身可擴充的空間。如果我們使用flex-grow: 0,那這個flex元素就完全不會擴展了。所以我們需要把頭部和底部之間的內容標簽元素設置為flex-grow: 1或者flex-grow: auto,這樣內容部分就會自動填充滿頭部和底部之外的所有空間。

    為了避免底部內容受內容部分擴充空間的影響,我們給footer底部元素flex-shrink: 0屬性。flex-shrink的作用與flex-grow是恰恰相反,用來控制flex元素收縮的空間,這里我們給了flex-shrink: 0就是為了底部footer的大小不受影響。

    我們直接上HTML和CSS代碼看看是怎么實現的。

    • HTML
    <div id="document">
     <nav>
      <h1>頭部內容</h1>
     </nav>
     <main>
      <p>可以添加更多內容看看底部的變化哦!</p>
     </main>
     <footer>
      <h1>底部內容</h1>
     </footer>
    </div>
    
    • CSS
    #document {
        height: 100vh;
        display: flex;
        flex-direction: column;
        background: #202020;
        font-family: microsoft yahei,wenquanyi micro hei,sans-serif !important;
    }
    
    nav, footer {
        background: #494949;
        display: flex;
        justify-content: center;
    }
    
    main {
        color: #bdbdbd;
        flex: auto;
    }
    
    footer {
        flex-shrink: 0;
    }
    
    * {
        margin: 0;
    }
    
    h1,
    p {
        padding: 15px;
    }
    
    nav > h1 {
        color: #82FCFD;
        text-shadow: 1px 1px 4px #00000080;
    }
    
    footer > h1 {
        color: #82FCFD;
        text-shadow: 1px 1px 4px #00000080;
    }
    

    知識點總結:

    • flex-grow?— 是用來控制一個flex元素相對它同等級flex元素的自身可擴充的空間
    • flex-shrink?— 作用與flex-grow是恰恰相反,用來控制flex元素收縮的空間

    下載權限
    查看
    • 免費下載
      評論并刷新后下載
      登錄后下載
    • {{attr.name}}:
    您當前的等級為
    登錄后免費下載登錄 小黑屋反思中,不準下載! 評論后刷新頁面下載評論 支付以后下載 請先登錄 您今天的下載次數(次)用完了,請明天再來 支付積分以后下載立即支付 支付以后下載立即支付 您當前的用戶組不允許下載升級會員
    您已獲得下載權限 您可以每天下載資源次,今日剩余

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 国产AV午夜精品一区二区入口| 真实国产乱子伦精品一区二区三区| 无码少妇一区二区三区芒果| 精品国产一区在线观看| 日韩视频一区二区三区| 国产在线观看一区二区三区四区| 国产一区二区三区在线2021| 国产无人区一区二区三区 | 国产精品免费视频一区| 国产激情无码一区二区三区| 性色av无码免费一区二区三区| 亚洲老妈激情一区二区三区| 国产成人免费一区二区三区| 精品性影院一区二区三区内射| 午夜无码视频一区二区三区| 日韩a无吗一区二区三区| 精品国产一区二区三区久久久狼| 国产精品视频一区二区三区无码| 日韩精品无码一区二区三区不卡 | 麻豆AV天堂一区二区香蕉| 无码毛片一区二区三区视频免费播放 | 日本一区免费电影| 日本免费一区二区在线观看| 中文字幕人妻丝袜乱一区三区| 亚洲一区精品无码| 国内偷窥一区二区三区视频| 波多野结衣电影区一区二区三区| 国产一区二区视频在线播放| 风流老熟女一区二区三区| 美女AV一区二区三区| www一区二区三区| 日韩视频一区二区在线观看 | 亚洲一区二区成人| 精品少妇ay一区二区三区| 中文字幕亚洲综合精品一区| 国产在线一区二区视频| 国产无码一区二区在线| 亚洲综合无码精品一区二区三区| 国产微拍精品一区二区| 波多野结衣一区二区三区aV高清| 国产综合一区二区|