css頁面頂部底部固定,中間自適應幾種方法

以下是實現頁面頂部和底部固定、中間內容自適應的幾種常見方法,附代碼示例和適用場景分析:


方法一:Flexbox 彈性布局

<body style="margin:0; min-height:100vh; display:flex; flex-direction:column;"><header style="height:60px; background:#ccc;">頂部固定</header><main style="flex:1; overflow-y:auto;">中間自適應內容</main><footer style="height:40px; background:#eee;">底部固定</footer>
</body>

特點

  • 現代瀏覽器首選方案
  • 中間區域自動填充剩余空間
  • 支持中間內容獨立滾動

方法二:CSS Grid 網格布局

<body style="margin:0; height:100vh; display:grid; grid-template-rows:60px 1fr 40px;"><header style="background:#ccc;">頂部固定</header><main style="overflow-y:auto;">中間自適應內容</main><footer style="background:#eee;">底部固定</footer>
</body>

特點

  • 二維布局能力更強
  • 代碼簡潔直觀
  • 適合復雜布局場景

方法三:絕對定位

<body style="margin:0;"><header style="position:fixed; top:0; width:100%; height:60px; background:#ccc;">頂部固定</header><main style="margin:60px 0 40px; height:calc(100vh - 100px); overflow-y:auto;">中間自適應內容</main><footer style="position:fixed; bottom:0; width:100%; height:40px; background:#eee;">底部固定</footer>
</body>

特點

  • 兼容性最好(支持IE8+)
  • 需要手動計算高度
  • 注意設置中間區域的外邊距

方法四:Viewport單位 + Calc

<style>header { height:10vh; background:#ccc; }footer { height:8vh; background:#eee; }main { height: calc(100vh - 18vh); overflow-y: auto;}
</style><header>頂部固定</header>
<main>中間自適應內容</main>
<footer>底部固定</footer>

特點

  • 響應式布局友好
  • 需注意移動端瀏覽器地址欄的影響
  • 建議配合媒體查詢使用

關鍵注意事項:

  1. 滾動處理:中間區域建議添加 overflow-y: auto 實現獨立滾動
  2. 高度計算:使用 100vh 時需考慮移動端瀏覽器地址欄的顯示/隱藏
  3. 層級問題:固定定位元素需設置 z-index 防止內容覆蓋
  4. 內容溢出:中間區域內容較多時需設置合理的滾動策略
  5. 瀏覽器兼容:Flexbox/Grid 方案需考慮目標瀏覽器支持情況

根據項目需求選擇方案:

  • 現代項目推薦 FlexboxGrid
  • 需要兼容舊瀏覽器時選擇 絕對定位
  • 響應式項目可嘗試 Viewport單位 方案

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95818.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95818.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95818.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

徹底拆解 CSS?accent-color:一個屬性,省下一堆“重造輪子”的苦工

我有一支技術全面、經驗豐富的小型團隊&#xff0c;專注高效交付中等規模外包項目&#xff0c;有需要外包項目的可以聯系我既要原生控件、又要品牌配色&#xff0c;還不想偽造組件&#xff1f;能不能講透 accent-color。下面給出一版盡量“到骨頭里”的解析&#xff1b;對討厭從…

在選擇iOS代簽服務前,你必須了解的三大安全風險

選iOS代簽服務&#xff1f;這三個安全坑千萬別踩&#xff01;關于iOS代簽那些你可能忽略的安全風險。多少次因為測試設備限制、緊急分發或者企業賬號年費肉疼&#xff0c;我們不得不考慮第三方代簽服務&#xff1f;但這里頭的水&#xff0c;比想象中深。風險一&#xff1a;證書…

GitHub 熱榜項目 - 日榜(2025-09-04)

GitHub 熱榜項目 - 日榜(2025-09-04) 生成于&#xff1a;2025-09-04 統計摘要 共發現熱門項目&#xff1a;20 個 榜單類型&#xff1a;日榜 本期熱點趨勢總結 本期GitHub熱榜呈現三大技術熱點&#xff1a;AI智能體開發、架構工程化和開發者工具革新。JetBrains Koog、DeepC…

在 vue-vben-admin(v5 版本)中,使用 ECharts 圖表(豆包版)

在 vue-vben-admin&#xff08;v5版本&#xff09;中&#xff0c;使用 ECharts 圖表的方式已通過框架封裝的 vben/plugins/echarts 模塊簡化&#xff0c;結合官方示例&#xff0c;具體使用步驟如下&#xff1a; 1. 核心組件與工具導入 框架提供了封裝后的 EchartsUI 組件&#…

本地 Ai 離線視頻去水印字幕!支持字幕、動靜態水印去除!

這款功能強大的AI視頻處理工具&#xff0c;能夠有效地去除視頻中的靜態水印、動態水印以及字幕。 針對不同類型的水印和字幕&#xff0c;提供了多種去除方式&#xff0c;操作簡單&#xff0c;效果顯著。 首先【打開視頻】&#xff0c;然后在識別模式里面選擇識別模式&#xf…

1個工具管好15+網盤(批量轉存/分享實測)工具實測:批量轉存 + 自動換號 + 資源監控 賬號添加失敗 / 轉存中斷?這樣解決(含功能詳解)

電腦里裝了N個網盤客戶端&#xff1a;百度網盤存工作文件、阿里云盤放家庭照片、夸克網盤塞學習資料&#xff0c;還有迅雷、天翼云盤散落在各處——每次找文件要在5個軟件間反復切換&#xff0c;手動轉存10個文件得點幾十次鼠標&#xff0c;網盤多了反倒成了“數字負擔”。直到…

2025-09-04 CSS2——常見選擇器

文章目錄1 元素選擇器2 id 選擇器3 class 選擇器4 通用選擇器5 子元素選擇器6 后代選擇器7 相鄰兄弟選擇器8 后續兄弟選擇器9 偽類選擇器10 偽元素選擇器11 屬性選擇器11.1 [attribute]11.2 [attribute"value"]11.3 [attribute~"value"]與[attribute*"…

計算機網絡:概述層---OSI參考模型

&#x1f310; OSI七層參考模型詳解&#xff1a;從物理層到應用層的完整剖析 &#x1f4c5; 更新時間&#xff1a;2025年9月3日 &#x1f3f7;? 標簽&#xff1a;OSI模型 | 網絡協議 | 七層模型 | 計算機網絡 | 網絡架構 | 協議棧 | 王道考研 摘要: 本文將用最通俗易懂的語言&…

JVM相關 2|Java 垃圾回收機制(GC算法、GC收集器如G1、CMS)的必會知識點匯總

目錄&#xff1a;&#x1f9e0; 一、GC基礎概念1. 什么是垃圾回收&#xff08;Garbage Collection, GC&#xff09;&#xff1f;2. 判斷對象是否為垃圾的方法&#x1f9e9; 二、GC核心算法1. 標記-清除算法&#xff08;Mark-Sweep&#xff09;2. 標記-整理算法&#xff08;Mark…

04 - 【HTML】- 常用標簽(下篇)

表格標簽 1 表格 table 在HTML中&#xff0c;表格是通過<table>標簽來創建的&#xff0c;它允許在html中以行和列的形式組織數據。HTML提供了一套完整的標簽來創建功能豐富的表格。 2 表格的 結構 3 表格table代碼結構 4 表格結構解析 <thead></thead>&…

nVisual從入門到精通—應用實例

五、應用實例 5.1 數據中心的規劃設計 5.1.1 規劃設計流程5.1.2 創建模型庫 5.1.2.1 設備模型庫 設備模型庫基于組織內實際使用的設備型號進行構建&#xff0c;主要包含以下對象類型&#xff1a;機柜、網絡設備、板卡、組合模型。 設備屬性字段&#xff1a;除系統保留字段&…

代碼可讀性的詳細入門

&#x1f3e0;個人主頁&#xff1a;塵覺主頁 文章目錄前言一、可讀性的重要性二、用名字表達代碼含義三、避免名字歧義四、良好的代碼風格五、注釋的價值六、如何編寫注釋七、提高控制流的可讀性八、拆分長表達式九、變量與可讀性十、抽取函數十一、一次只做一件事十二、用自然…

輪軌法向接觸斑計算

輪軌法向接觸斑計算 &#xff0c;同時輸出 接觸斑面積、長軸 a、短軸 b、最大 Hertz 壓力 pmax 等關鍵指標 算法基于 Hertz 接觸理論&#xff08;適用于單點橢圓接觸&#xff09;&#xff0c;并給出如何擴展到 非 Hertz / 有限元驗證的提示。1 理論回顧&#xff08;Hertz 橢圓…

實習結束,秋招開啟

大家好&#xff0c;依舊是你們的老朋友仰望-星空~~&#xff0c;我又消失了3個月&#xff0c;快四個月了&#x1f604;&#xff0c;不少文章都 落灰了。這段時間其實一直在忙著找實習&#xff0c;然后準備面試題、刷算法、做項目啥的&#xff0c;也是比較忙碌的&#xff0c;也就…

14 C++ STL 容器實戰:stack/list 模擬實現指南 + priority_queue 用法及避坑技巧

stack和queuestack的模擬實現和應用--底層就是順序表從棧的接口中可以看出&#xff0c;棧實際是一種特殊的vector&#xff0c;因此使用vector完全可以模擬實現stack。#include<vector> namespace Stack { template<class T> class stack { public:stack() {}void p…

Linux基礎指令(入門必備2.0)

創作初心&#xff1a;在加深個人對知識系統理解的同時希望可以幫助到更多需要的同學 &#x1f604;柯一夢的專欄系列 &#x1f680;柯一夢的Gitee主頁 &#x1f6e0;?柯一夢主頁詳情 座右銘&#xff1a;心向深耕&#xff0c;不問階序&#xff1b;汗沃其根&#xff0c;花自滿枝…

《失落之魂》M站評分僅40?國產動作類游戲究竟何去何從?

前段時間頻頻預熱的國產動作游戲《失落之魂》已正式發售&#xff0c;外媒Push Square發布了該作的階段性評測。評測指出&#xff0c;盡管《失落之魂》在規模上已接近3A級&#xff0c;但能感受到其獨立制作的根基。這款游戲于2016年通過索尼“中國之星計劃”獲得支持&#xff0c…

一個專為地圖制圖和數據可視化設計的在線配色網站,可以助你制作漂亮的地圖!

ColorBrewer 是一個專為地圖制圖和數據可視化設計的在線配色工具&#xff0c;由賓夕法尼亞州立大學地理學教授 Cynthia Brewer 及其團隊開發 。 它提供了科學、美觀且考慮周全的配色方案&#xff0c;旨在幫助用戶&#xff08;無論是科研人員、設計師還是GIS分析師&#xff09;…

Python圖像處理基礎(十六)

Python圖像處理基礎(十六) 文章目錄 Python圖像處理基礎(十六) 10、圖像增強和濾鏡 10.1 ImageEnhance 10.1.1 亮度 10.1.2 對比度 10.1.3 顏色 10.1.4 清晰度 10.2 ImageFilter 10.3 預定義濾鏡 10.4 參數化濾鏡 10.4.1 模糊函數 10.4.2 反銳化蒙版 10.4.3 排序和平均濾波…

python中等難度面試題(1)

1、請解釋Python中的深拷貝(deep copy)和淺拷貝(shallow copy)的區別&#xff0c;并舉例說明它們在實際應用中可能引發的問題。 答&#xff1a; 在Python中&#xff0c;拷貝對象通常指的是創建一個新的對象&#xff0c;這個新對象是原始對象的一個副本。拷貝可以分為兩種類型&a…