ฉันเคยใช้สิ่งนี้เพื่อติดท้ายกระดาษของฉันไปที่ด้านล่างและมันได้ผลสำหรับฉัน:
HTML
<body>
<div class="allButFooter">
<!-- Your page's content goes here, including header, nav, aside, everything -->
</div>
<footer>
<!-- Footer content -->
</footer>
</body>
นั่นคือการดัดแปลงเพียงอย่างเดียวที่คุณต้องทำใน HTML เพิ่มมันdiv
ด้วย"allButFooter"
คลาส ฉันทำกับทุกหน้าสั้น ๆ ฉันรู้ว่าส่วนท้ายจะไม่ยึดติดกับด้านล่างและหน้ายาวพอที่ฉันรู้แล้วว่าต้องเลื่อน ฉันทำสิ่งนี้ดังนั้นฉันสามารถเห็นว่ามันใช้ได้ดีในกรณีที่เนื้อหาของหน้าเว็บเป็นแบบไดนามิก
CSS
.allButFooter {
min-height: calc(100vh - 40px);
}
"allButFooter"
ระดับมีmin-height
ค่าที่ขึ้นอยู่กับวิวพอร์ตของความสูง ( 100vh
หมายถึง 100% ของความสูงวิวพอร์ต) 40px
และความสูงของส่วนท้ายที่ฉันรู้แล้วเป็น
นั่นคือทั้งหมดที่ฉันทำและมันทำงานได้อย่างสมบูรณ์แบบสำหรับฉัน ฉันไม่ได้ลองในเบราว์เซอร์ทุกตัวแค่ Firefox, Chrome และ Edge และผลลัพธ์ก็เป็นไปตามที่ฉันต้องการ ส่วนท้ายของแท่งอยู่ที่ด้านล่างและคุณไม่ต้องยุ่งกับดัชนี z ตำแหน่งหรือคุณสมบัติอื่น ๆ ตำแหน่งขององค์ประกอบทุกอย่างในเอกสารของฉันคือตำแหน่งเริ่มต้นฉันไม่ได้เปลี่ยนเป็นแบบสัมบูรณ์หรือแบบคงที่หรืออะไรก็ตาม
ทำงานกับการออกแบบที่ตอบสนองได้ดี
นี่คือสิ่งที่ฉันต้องการจะล้างออก การแก้ปัญหานี้ด้วยส่วนท้ายเดียวกันที่เป็น 40px Twitter-Bootstrap
สูงไม่ได้ทำงานตามที่ผมคาดไว้เมื่อผมทำงานในการออกแบบที่ตอบสนองต่อการใช้ ฉันต้องแก้ไขค่าที่ฉันถูกแทนที่ในฟังก์ชัน:
.allButFooter {
min-height: calc(100vh - 95px);
}
อาจเป็นเพราะTwitter-Bootstrap
มาพร้อมกับระยะขอบและช่องว่างภายในของตัวเองดังนั้นฉันจึงต้องปรับค่านั้น
ฉันหวังว่านี่จะเป็นประโยชน์สำหรับพวกคุณบางคน! อย่างน้อยก็เป็นวิธีง่ายๆในการลองใช้และไม่เกี่ยวข้องกับการเปลี่ยนแปลงครั้งใหญ่ในเอกสารทั้งหมด