Saya menggunakan Bootstrap 3 untuk situs yang saya rancang.
Saya ingin punya catatan kaki seperti ini. Sampel
Harap dicatat bahwa saya tidak menginginkannya TETAP sehingga bootstrap navbar-fix-bottom tidak menyelesaikan masalah saya. Saya hanya ingin selalu ada di bagian bawah konten dan juga responsif.
Panduan apa pun akan sangat dihargai.
EDIT:
Maaf jika saya tidak jelas. Apa yang terjadi sekarang adalah ketika konten tidak memiliki cukup konten. Footer saya bergerak ke atas dan kemudian meninggalkan ruang kosong di bagian bawah.
Ini yang saya miliki sekarang untuk navbar saya
<nav class="navbar navbar-inverse navbar-bottom" style="padding:0 0 120px 0">
<div class="container">
<div class="row">
<div class="col-sm-4">
<h5 id='footer-header'> SITEMAP </h3>
<div class="col-sm-4" style="padding: 0 0 0 0px">
<p>News</p>
<p>contact</p>
</div>
<div class="col-sm-4" style="padding: 0 0 0 0px">
<p>FAQ</p>
<p>Privacy Policy</p>
</div>
</div>
<div class="col-sm-4">
<h5 id='footer-header'> xxxx </h3>
<p>yyyyyyyyyyyyy</p>
</div>
<div class="col-sm-4">
<h5 id='footer-header'> xxxxx </h3>
<p>uuuuuuuuuuuuuuu</p>
</div>
</div>
</div>
</nav>
CSS
.navbar-bottom {
min-height: 300px;
margin-top: 100px;
background-color: #28364f;
padding-top: 35px;
color:#FFFFFF;
}
html
css
twitter-bootstrap
footer
pengguna3169403
sumber
sumber
Jawaban:
Lihat contoh di bawah ini. Ini akan memposisikan Footer Anda untuk tetap di bawah jika halaman memiliki lebih sedikit konten dan berperilaku seperti footer normal jika halaman memiliki lebih banyak konten.
CSS
HTML
UPDATE : Versi baru Bootstrap menunjukkan cara menambahkan footer lengket tanpa menambahkan pembungkus. Silakan lihat Jawaban Jboy Flaga untuk lebih jelasnya.
sumber
Ada solusi yang disederhanakan dari bootstrap di sini (di mana Anda tidak perlu membuat kelas baru): http://getbootstrap.com/examples/sticky-footer-navbar/
Saat Anda membuka halaman itu, klik kanan pada browser dan "View Source" dan buka file sticky-footer-navbar.css ( http://getbootstrap.com/examples/sticky-footer-navbar/sticky-footer-navbar. css )
Anda dapat melihat bahwa Anda hanya membutuhkan CSS ini
untuk HTML ini
sumber
gunakan flexbox karena Anda bisa menggunakannya sesuai keinginan Anda. Solusi yang ditawarkan oleh bootstrap 4 masih memburu konten yang tumpang tindih dalam tata letak responsif, misalnya: itu akan pecah dalam tampilan seluler, saya menemukan trik yang paling rapi adalah dengan menggunakan demo solusi flexbox yang ditunjukkan di sini :( https://philipwalton.github.io / diselesaikan-oleh-flexbox / demo / sticky-footer / ) dengan cara ini kita tidak harus berurusan dengan masalah ketinggian tetap yang merupakan solusi usang sekarang ... solusi ini bekerja untuk bootstrap 3 dan 4 mana pun yang Anda gunakan.
sumber
UPDATE: Ini tidak langsung menjawab pertanyaan secara keseluruhan, tetapi orang lain mungkin menemukan ini berguna.
Ini adalah HTML untuk catatan kaki responsif Anda
Untuk CSS
CATATAN: Pada saat posting untuk pertanyaan ini, baris kode di atas tidak mendorong catatan kaki di bawah konten halaman; tetapi itu akan menjaga footer Anda dari merangkak di tengah halaman ketika ada sedikit konten pada halaman. Untuk contoh yang mendorong footer di bawah konten halaman lihat di sini http://getbootstrap.com/examples/sticky-footer/
sumber
padding-bottom
wadah konten utama sama dengan ketinggian footer. Dan Anda perlu melakukannya secara dinamis di halamanload
danresize
acara dan juga di footerDOMSubtreeModified
.Untuk orang-orang yang masih berjuang dan solusi yang dijawab tidak bekerja sesuai keinginan Anda, berikut adalah solusi paling sederhana yang saya temukan.
Bungkus konten utama Anda dan berikan ketinggian tampilan minimal. Sesuaikan 60 dengan nilai berapa pun yang dibutuhkan gaya Anda.
Itu saja dan itu bekerja dengan cukup baik.
sumber
Galen Gidman telah memposting solusi yang sangat bagus untuk masalah footer footer responsif yang tidak memiliki ketinggian tetap. Anda dapat menemukan solusi lengkapnya di blognya: http://galengidman.com/2014/03/25/responsive-flexible-height-sticky-footers-in-css/
HTML
CSS
sumber
Untuk solusi CSS murni, gulir setelah tanggal 2
<hr>
. Yang pertama adalah jawaban awal (diberikan pada tahun 2016)Kelemahan utama dari solusi di atas adalah mereka memiliki ketinggian tetap untuk footer.
Dan itu tidak memotongnya di dunia nyata, di mana orang menggunakan jutaan perangkat dan memiliki kebiasaan buruk untuk memutarnya ketika Anda tidak menduganya dan ** Poof! ** Ada konten halaman Anda di belakang catatan kaki!
Di dunia nyata, Anda memerlukan fungsi yang menghitung ketinggian footer dan secara dinamis menyesuaikan konten halaman
padding-bottom
untuk mengakomodasi ketinggian itu. Dan Anda perlu menjalankan fungsi kecil ini di halamanload
danresize
acara serta di footerDOMSubtreeModified
(kalau-kalau footer Anda diperbarui secara dinamis secara tidak sinkron atau mengandung elemen animasi yang mengubah ukuran ketika berinteraksi dengan).Berikut adalah bukti konsep, menggunakan jQuery
v3.0.0
dan Bootstrapv4-alpha
, tetapi tidak ada alasan mengapa itu tidak bekerja pada versi yang lebih rendah dari masing-masing.Tampilkan cuplikan kode
Awalnya, saya telah memposting solusi ini di sini tetapi saya menyadari ini mungkin membantu lebih banyak orang jika diposting di bawah pertanyaan ini.
Catatan: Saya telah sengaja membungkus
$([selector]).accomodateFooter()
sebagai plugin jQuery, sehingga bisa dijalankan pada setiap elemen DOM, seperti di sebagian besar layout itu bukan$('body')
'sbottom-padding
bahwa kebutuhan menyesuaikan, tetapi beberapa halaman wrapper elemen denganposition:relative
(biasanya induk langsung darifooter
) .Sunting nanti (3+ tahun setelah jawaban awal):
Pada titik ini saya tidak lagi menganggap dapat diterima menggunakan JavaScript untuk memposisikan footer konten dinamis di bagian bawah halaman. Itu dapat dicapai dengan CSS saja, menggunakan flexbox, cepat, lintas-browser.
Ini dia:
Tampilkan cuplikan kode
sumber
Metode ini menggunakan markup minimal. Masukkan saja semua konten Anda ke dalam .wrapper yang memiliki padding-bottom dan margin-bottom negatif sama dengan tinggi footer (dalam contoh saya 100px).
sumber
Atau ini
sumber
Untuk Bootstrap:
sumber
navbar-fixed-bottom
BUKAN apa yang memecahkan masalah.Tak satu pun dari solusi ini yang benar-benar bekerja untuk saya dengan sempurna karena saya menggunakan kelas navbar-inverse di footer saya. Tapi saya memang mendapatkan solusi yang berhasil dan bebas Javascript. Chrome yang digunakan untuk membantu dalam membentuk kueri media. Ketinggian footer berubah ketika layar mengubah ukuran sehingga Anda harus memperhatikan itu dan menyesuaikannya. Konten footer Anda (saya atur id = "footer" untuk mendefinisikan konten saya) harus menggunakan posisi = absolut dan bawah = 0 untuk menjaganya agar tetap di bawah. Lebar juga: 100%. Inilah CSS saya dengan pertanyaan media. Anda harus menyesuaikan min-width dan max-width dan menambah atau menghapus beberapa elemen:
sumber
Inilah yang berhasil bagi saya menggunakan Flexbox :
Sumber: https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/
sumber