2010年1月3日星期日

網頁設計網頁佈局和定位:絕對定位和浮動佈局

無標題文件

網頁設計網頁佈局和定位:絕對定位和浮動佈局

發佈者:SEO香港優化專家 - Web Design

網站設計

在本CSS教程中,實現分欄佈局有兩種方法。第一種方法是使用四種CSS定位選項(absolute 、static、relative和fixed)中的絕對定位(absolute positioning),它可以將文檔中的某個元素從其原本位置上移除,並重新定位在期望的任何地點之上。第二種則是使用CSS中的浮動(float)概念。

絕對定位或浮動都能夠用來實現分欄效果。二者可以獨立使用,也可以結合在一起,相輔相成。

1、絕對定位

絕對定位的優勢在於,我們可以絲毫不差地精確控制任何元素的位置—這裡面沒有什麼需要猜測或者運氣的成分。由於應用了絕對定位的元素被不留痕跡地從常規文檔流中完全移除,所以它也不會為其他元素帶來任何的影響。

那麼讓我們試一試用絕對定位如何實現下面的佈局。

:絕對定位和浮動的分欄佈局-建站學" src="/System/uploads/allimg/090425/1208400.gif" border="0" height="239" width="360">

這是一個三欄的佈局,並且是居中顯示的。其中,A欄是主體內容欄,B欄和C欄都是側邊欄。首先,我們不可能直接用絕對定位將A、B、C三欄定位到居中的位置,因為每個人顯示器的分辨率是不同的,在1024X768分辨率的顯示器上定位的居中效果,在別的分辨率的顯示器上看到的效果肯定不會是居中顯示的,那麼,該如何解決這個問題呢?

幸好,在絕對定位模型中有個極為有用的特性,那就是:若某個絕對定位元素的容器也被定位過,那麼該元素指定的top和left值將不會基於文檔的根元素html(也就是瀏覽器窗口的左上角)計算,而是會基於其容器的左上角計算這個偏移量。換句話說,也就是:被定位過的容器將扮演其中所有元素絕對定位起始點的角色。

所以,利用這個特性,我們給A、B、C欄的外部加上一個容器D,如下圖:

:絕對定位和浮動的分欄佈局-建站學" src="/System/uploads/allimg/090425/1208401.gif" border="0" height="290" width="360">

然後,我們讓容器D居中,並給它加上一個屬性:position:relative,這樣,再用絕對定位定位A、B、C的top和left值,A、B、C的位置就會基於容器D的左上角的位置來計算了,這樣就可以實現我們期望的三欄居中的效果了。

網頁寄存

没有评论:

发表评论