css是網頁的外衣,好不好看全憑css樣式,而佈局是css中比較重要的部分,下麵來分析一下常見的幾種佈局。 流動模型 流動模型是網頁佈局的預設模式,也是最常見的佈局模式,他有兩個特點: 1.塊狀元素都在所處包含元素內自上而下按順序垂直延伸分佈。常見的塊狀元素有:div,p,ul,ol,h1~h6,a ...
css是網頁的外衣,好不好看全憑css樣式,而佈局是css中比較重要的部分,下麵來分析一下常見的幾種佈局。
流動模型
流動模型是網頁佈局的預設模式,也是最常見的佈局模式,他有兩個特點:
1.塊狀元素都在所處包含元素內自上而下按順序垂直延伸分佈。常見的塊狀元素有:div,p,ul,ol,h1~h6,address等
2.內聯元素都會在所處包含元素內從左到右水平分佈顯示。常見的內聯元素有:a,span,img,input,textarea等
浮動模型
浮動模型是指使用css將塊狀元素定義為浮動。用法:float:left/right/none
層模型
css定義了一組定位屬性(position)支持佈局模型。
1.靜態定位 設置position:static
無特殊定位,對象遵循正常文檔流。top,right,bottom,left等屬性不會被應用
2.絕對定位 設置position:absolute
將元素從文檔流中拖出來,然後使用top,right,bottom,left等屬性相對於其最接近的一個具有定位屬性的父包含快進行絕對定位。如果不存在這樣的屬性塊,則相對於body元素,即相對於瀏覽器視窗。
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>Css3學習</title> <style> .test{position:absolute;top:0px;left:0px;width:200px;height:200px;padding:5px 10px;background:#c00;color:#fff;line-height:120%;} </style> </head> <body style="background:#ccc;"> <div style="background:#494444; position:relative;width:300px;height:300px;"> <div class="test">我是絕對定位,在這裡相對於父級div定位</div> </div> </body> </html>
3.相對定位 設置position:relative
對象遵循正常文檔流,但可通過top,right,bottom,left等屬性進一步確定位置,這也是和static屬性不同的地方。
4.固定定位 設置position:fixed
固定定位和絕對定位的不同在於fixed參照定位的元素始終是視圖本身(屏幕內的網頁視窗),而absolute參照的是有定位屬性的父級元素。如下代碼:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>Css3學習</title> <style> .test{position:fixed;top:0px;left:0px;width:200px;height:200px;padding:5px 10px;background:#c00;color:#fff;line-height:120%;} </style> </head> <body style="background:#ccc;"> <div style="background:#494444; width:300px;height:300px;position:relative;"> <div class="test">我是固定定位,在這裡相對於body定位</div> </div> </body> </html>
下節探討定位以及佈局的其他屬性:z-index,display,float,clear,visibility,clip,overflow,overflow-x,overflow-y