」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何讓內容 Div 填滿正文高度的 100%(不包括固定頁首和頁尾)?

如何讓內容 Div 填滿正文高度的 100%(不包括固定頁首和頁尾)?

發佈於2024-11-07
瀏覽:519

How to Make a Content Div Fill 100% of Body Height Excluding Fixed Header and Footer?

如何設定內容Div 佔據正文高度的100%(不包括固定高度的頁首和頁尾)

CSS 允許您定義精確的以及網頁的多功能版面。一個常見的挑戰是將內容區域設定為佔據頁面的整個高度,同時排除頁首和頁尾等固定高度元素所佔用的空間。本指南提供了使用純 CSS 的全面解決方案,該解決方案與所有現代瀏覽器相容。

HTML 結構包括頁首、內容 div 和頁尾。在 CSS 中,我們首先確保 html 和 body 元素的最小高度為 100%,並且沒有邊距或填滿。

html, body {
  min-height: 100%;
  padding: 0;
  margin: 0;
}

為了定位內容區域,我們引入了一個 #wrapper div,它使用絕對定位跨越整個視口。

#wrapper {
  padding: 50px 0; /* Adjust to match header and footer heights */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

在#wrapper 內部,我們定義最小高度為100% 的內容div (#content)。這可確保它填滿整個可用空間。

#content {
  min-height: 100%;
}

為了考慮頁首和頁尾的高度,我們使用負邊距來抵銷它們。

header {
  margin-top: -50px; /* Adjust to match header height */
  height: 50px;
}

footer {
  margin-bottom: -50px; /* Adjust to match footer height */
  height: 50px;
}

此方法可確保內容 div 佔據頁首和頁尾的固定高度後剩餘的空間,從而形成適應不同螢幕尺寸和裝置方向的無縫動態佈局。

最新教學 更多>
  • 您如何在Laravel Blade模板中定義變量?
    您如何在Laravel Blade模板中定義變量?
    在Laravel Blade模板中使用Elegance 在blade模板中如何分配變量對於存儲以後使用的數據至關重要。在使用“ {{}}”分配變量的同時,它可能並不總是最優雅的解決方案。 幸運的是,Blade通過@php Directive提供了更優雅的方法: $ old_section =...
    程式設計 發佈於2025-04-12
  • MySQL中如何生成範圍內的隨機值?
    MySQL中如何生成範圍內的隨機值?
    在MySQL 中,在使用MySQL時,可能需要在某些情況下生成一個指定範圍內的隨機值。在存在rand()函數時,它無法滿足此要求。 This article delves into the best approach for achieving this in MySQL.Solution:The...
    程式設計 發佈於2025-04-12
  • 如何在Java的全屏獨家模式下處理用戶輸入?
    如何在Java的全屏獨家模式下處理用戶輸入?
    Handling User Input in Full Screen Exclusive Mode in JavaIntroductionWhen running a Java application in full screen exclusive mode, the usual event ha...
    程式設計 發佈於2025-04-12
  • 如何將多種用戶類型(學生,老師和管理員)重定向到Firebase應用中的各自活動?
    如何將多種用戶類型(學生,老師和管理員)重定向到Firebase應用中的各自活動?
    Red: How to Redirect Multiple User Types to Respective ActivitiesUnderstanding the ProblemIn a Firebase-based voting app with three distinct user type...
    程式設計 發佈於2025-04-12
  • PostgreSQL中高效導出PL/pgSQL查詢結果到CSV文件的技巧
    PostgreSQL中高效導出PL/pgSQL查詢結果到CSV文件的技巧
    PostgreSQL中將PL/pgSQL輸出導出到CSV文件 簡介 將PostgreSQL中的數據導出到CSV文件是數據分析和進一步處理中的一項常見任務。本文探討了使用PL/pgSQL過程實現此目標的兩種方法: 服務器端方法 此方法利用PostgreSQL內置的COPY命令。它允許您將SQL結果集...
    程式設計 發佈於2025-04-12
  • 如何使用FormData()處理多個文件上傳?
    如何使用FormData()處理多個文件上傳?
    )處理多個文件輸入時,通常需要處理多個文件上傳時,通常是必要的。 The fd.append("fileToUpload[]", files[x]); method can be used for this purpose, allowing you to send multi...
    程式設計 發佈於2025-04-12
  • 如何簡化PHP中的JSON解析以獲取多維陣列?
    如何簡化PHP中的JSON解析以獲取多維陣列?
    php 試圖在PHP中解析JSON數據的JSON可能具有挑戰性,尤其是在處理多維數組時。要簡化過程,建議將JSON作為數組而不是對象解析。 執行此操作,將JSON_DECODE函數與第二個參數設置為true:[&&&&& && &&&&& json = JSON = JSON_DECODE($ ...
    程式設計 發佈於2025-04-12
  • 為什麼使用固定定位時,為什麼具有100%網格板柱的網格超越身體?
    為什麼使用固定定位時,為什麼具有100%網格板柱的網格超越身體?
    網格超過身體,用100%grid-template-columns 為什麼在grid-template-colms中具有100%的顯示器,當位置設置為設置的位置時,grid-template-colly修復了? 問題: 考慮以下CSS和html: class =“ snippet-code”> ...
    程式設計 發佈於2025-04-12
  • 在程序退出之前,我需要在C ++中明確刪除堆的堆分配嗎?
    在程序退出之前,我需要在C ++中明確刪除堆的堆分配嗎?
    在C中的顯式刪除 在C中的動態內存分配時,開發人員通常會想知道是否需要手動調用“ delete”操作員在heap-exprogal exit exit上。本文深入研究了這個主題。 在C主函數中,使用了動態分配變量(HEAP內存)的指針。當應用程序退出時,此內存是否會自動發布?通常,是。但是,即使在...
    程式設計 發佈於2025-04-12
  • 在Windows中如何用C#編程控制應用程序音量?
    在Windows中如何用C#編程控制應用程序音量?
    利用Windows音量混合器控制應用程序音量 通過Windows核心音頻庫,尤其是在Windows 7及更高版本的操作系統上,可以輕鬆訪問和操作應用程序的音量級別。 代碼示例: 以下C#控制台應用程序代碼片段演示瞭如何通過音量混合器界面控制應用程序音量: using System; using ...
    程式設計 發佈於2025-04-12
  • 如何從Google API中檢索最新的jQuery庫?
    如何從Google API中檢索最新的jQuery庫?
    從Google APIS 問題中提供的jQuery URL是版本1.2.6。對於檢索最新版本,以前有一種使用特定版本編號的替代方法,它是使用以下語法:獲取最新版本:未壓縮)While these legacy URLs still remain in use, it is recommended ...
    程式設計 發佈於2025-04-12
  • JavaScript挑戰:Timer計時器實現攻略
    JavaScript挑戰:Timer計時器實現攻略
    您可以在repo github的这篇文章中找到所有代码。 异步编程计时器相关的挑战 与时间限制的缓存 类TimeLimitedCache { constructor(){ this._cache = new Map(); } set(键,值,持续...
    程式設計 發佈於2025-04-12
  • 為什麼不````''{margin:0; }`始終刪除CSS中的最高邊距?
    為什麼不````''{margin:0; }`始終刪除CSS中的最高邊距?
    在CSS 問題:不正確的代碼: 全球範圍將所有餘量重置為零,如提供的代碼所建議的,可能會導致意外的副作用。解決特定的保證金問題是更建議的。 例如,在提供的示例中,將以下代碼添加到CSS中,將解決餘量問題: body H1 { 保證金頂:-40px; } 此方法更精確,避免了由全局保證金重置...
    程式設計 發佈於2025-04-12
  • 如何從PHP中的Unicode字符串中有效地產生對URL友好的sl。
    如何從PHP中的Unicode字符串中有效地產生對URL友好的sl。
    為有效的slug生成首先,該函數用指定的分隔符替換所有非字母或數字字符。此步驟可確保slug遵守URL慣例。隨後,它採用ICONV函數將文本簡化為us-ascii兼容格式,從而允許更廣泛的字符集合兼容性。 接下來,該函數使用正則表達式刪除了不需要的字符,例如特殊字符和空格。此步驟可確保slug僅包...
    程式設計 發佈於2025-04-12
  • 為什麼我的CSS背景圖像出現?
    為什麼我的CSS背景圖像出現?
    故障排除:CSS背景圖像未出現 ,您的背景圖像儘管遵循教程說明,但您的背景圖像仍未加載。圖像和样式表位於相同的目錄中,但背景仍然是空白的白色帆布。 而不是不棄用的,您已經使用了CSS樣式: bockent {背景:封閉圖像文件名:背景圖:url(nickcage.jpg); 如果您的html,cs...
    程式設計 發佈於2025-04-12

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3