當我們在寫頁面時經常會遇到頁面內容少的時候,footer會戳在頁面中間或什么?反正就是不在最底部顯示,反正就是很難看,下面要講的布局就是解決如何使元素粘住瀏覽器底部,
方法一:footer高度固定+絕對定位
html
<div class="dui-container">
<header>Header</header>
<main>Content</main>
<footer>Footer</footer>
</div>CSS
.dui-container{
position: relative;
min-height: 100%;
}
main {
padding-bottom: 100px;
}
header, footer{
line-height: 100px;
height: 100px;
}
footer{
width: 100%;
position: absolute;
bottom: 0
}
查看效果
方法二:在主體content上的下邊距增加一個負值等于底部高度
html
<header>Header</header>
<main>Content</main>
<footer>Footer</footer>CSS
html, body {
height: 100%;
}
main {
min-height: 100%;
padding-top: 100px;
padding-bottom: 100px;
margin-top: -100px;
margin-bottom: -100px;
}
header, footer{
line-height: 100px;
height: 100px;
}
查看效果
方法三:將頁腳的margin-top設為負數
html
<header>Header</header>
<main>Content</main>
<footer>Footer</footer>CSS
main {
min-height: 100%;
padding-top: 100px;
padding-bottom: 100px;
}
header, footer{
line-height: 100px;
height: 100px;
}
header{
margin-bottom: -100px;
}
footer{
margin-top: -100px;
}
查看效果
方法四: 通過設置flex,將footer的margin-top設置為auto
html
<header>Header</header>
<main>Content</main>
<footer>Footer</footer>CSS
body{
display: flex;
min-height: 100vh;
flex-direction: column;
}
header,footer{
line-height: 100px;
height: 100px;
}
footer{
margin-top: auto;
}查看效果
方法五: 通過函數calc()計算內容的高度
html代碼
<header>Header</header>
<main>Content</main>
<footer>Footer</footer>CSS代碼
main{
新聞熱點
疑難解答