CSS布局:讓頁(yè)腳始終保持底部的方法
2011-09-03 文章來(lái)源: 建站學(xué)
有時(shí)候,我們用CSS創(chuàng)建一個(gè)高度自適應(yīng)布局,如何保證頁(yè)腳(footer)在內(nèi)容不超過(guò)一屏的情況下始終保持在布局最下方是一個(gè)比較頭疼的事。我看過(guò)一些利用絕對(duì)定位的例子,但總感覺(jué)不是那么完美,經(jīng)過(guò)一下午的研究總結(jié)出一個(gè)利用負(fù)值外補(bǔ)丁的方法來(lái)實(shí)現(xiàn)這個(gè)效果的方法,兼容IE5.0+,Opera 8.5+,F(xiàn)irefox 1.5+。下面我們看步驟:
1、為了讓瀏覽器識(shí)別高度100%我們需要先給 html 和 body 加上一個(gè)高度值,同時(shí)清除所有元素的 margin 和 padding。順便提一下,經(jīng)過(guò)我的測(cè)試,html 和 body 的 height: 100%; 等于整個(gè)瀏覽器窗口的總高度,無(wú)論內(nèi)容是否超過(guò)一屏。而它們下一級(jí)子元素 height: 100%; 則等于第一屏的高度。如何,是不是有點(diǎn)不好理解?
* {
margin: 0;
padding: 0;
}
html, body {
height: 100%;
}
2、因?yàn)樯厦嫣岬降膯?wèn)題,所以為了讓布局自適應(yīng)高度,我們要加上 min-height: 100%;,雖然IE不支持這個(gè)屬性但是IE的 height: 100%; 有同樣的作用:
#wrapper {
min-height: 100%;
}
* html #wrapper {
height: 100%;
}
這樣,一個(gè)最簡(jiǎn)單的最小高度滿一屏的自適應(yīng)布局就做好了。為了便于查看,我加了一些寬度和背景色修飾,如下:
* {
margin: 0;
padding: 0;
}
html, body {
height: 100%;
text-align: center;
font: 12px/1.4 Verdana, sans-serif;
background: #f00;
}
#wrapper {
width: 770px;
min-height: 100%;
background: #ccc;
margin: auto;
text-align: left;
}
* html #wrapper {
height: 100%;
}