Bunu altbilgimi altına yapıştırmak için kullandım ve benim için çalıştı:
HTML
<body>
<div class="allButFooter">
<!-- Your page's content goes here, including header, nav, aside, everything -->
</div>
<footer>
<!-- Footer content -->
</footer>
</body>
Yani HTML yapmak zorunda tek değişiklik var, o ekleyin div
ile "allButFooter"
sınıfındaki. Bunu tüm sayfalarla yaptım, çok kısa olanlarla, altbilginin dibe yapışmayacağını ve ayrıca kaydırmam gerektiğini bildiğim kadar uzun sayfalar olduğunu biliyordum. Bunu yaptım, bu yüzden bir sayfanın içeriğinin dinamik olması durumunda iyi çalıştığını görebiliyordum.
CSS
.allButFooter {
min-height: calc(100vh - 40px);
}
"allButFooter"
Sınıf vardır min-height
(görünüm yüksekliği bağlıdır değeri 100vh
zaten olduğunu bildiğini, görüntü alanı yüksekliği sayesinde% 100) ve altbilginin yüksekliğini40px
.
Tüm yaptığım bu, ve benim için mükemmel çalıştı. Her tarayıcıda denemedim, sadece Firefox, Chrome ve Edge ve sonuçlar istediğim gibi oldu. Altbilgi alta yapışır ve z-endeksi, konum veya diğer özelliklerle uğraşmak zorunda kalmazsınız. Belgemdeki her öğenin konumu varsayılan konumdu, onu mutlak veya sabit veya herhangi bir şeyle değiştirmedim.
Duyarlı tasarımla çalışma
Temizlemek istediğim bir şey var. 40px yüksekliğindeki aynı Altbilgi ile bu çözüm, duyarlı bir tasarımda çalışırken beklediğim gibi çalışmadı Twitter-Bootstrap
. Ben işlevde çıkartıldığı değeri değiştirmek zorunda kaldı:
.allButFooter {
min-height: calc(100vh - 95px);
}
Muhtemelen Twitter-Bootstrap
kendi kenar boşlukları ve dolguları ile geliyor, bu yüzden bu değeri ayarlamam gerekiyordu.
Umarım bu sizin için yararlıdır! En azından, denemek için basit bir çözüm ve tüm belgede büyük değişiklikler yapmayı içermiyor.