position能夠取五個值
參數 | 描述 |
---|---|
absolute | 絕對定位;脫離⽂檔流的佈局,遺留下來的空間由後⾯的元素填充。定位的起始位置爲最近的⽗元素(postion不爲static),不然爲Body⽂檔自己。 |
relative | 相對定位;不脫離⽂檔流的佈局,只改變⾃身的位置,在⽂檔流原先的位置遺留空⽩區域。定位的起始位置爲此元素原先在⽂檔流的位置。 |
fixed | 固定定位;相似於absolute,但不隨着滾動條的移動⽽改變位置。 |
static | 默認值;默認佈局。 忽略 top, bottom, left, right和z-index |
inherit | 從父元素繼承該屬性的值 |
以上的absolute
和fixed
能夠使得元素脫離文檔流。git
position屬性只是定義元素的定位方式,要想此元素能按照但願的位置顯示,就須要使⽤下⾯的屬性(position:static不⽀持這些):github
bottom :表示向元素的下⽅插⼊多少像素,使元素向上移動多少像
素。佈局
上⾯屬性的值能夠爲負,單位: px 。
脫離⽂檔流的佈局,遺留下來的空間由後⾯的元素填充。定位的起始位置爲最近的⽗元素(postion不爲static),不然爲Body⽂檔
自己。post
不脫離⽂檔流的佈局,只改變⾃身的位置,在⽂檔流原先的位置遺留空⽩區域。定位的起始位置爲此元素原先在⽂檔流的位置。spa
相似於absolute,但不隨着滾動條的移動⽽改變位置。
表示此元素爲默認定位⽅式。
從父元素繼承定位⽅式。
1.父容器的position
屬性爲relative
code
由上圖可知,div繼承了父類的position屬性(relative);這時候div-a沒有脫離文檔流,只是相對於原來的位置向右邊偏移了,留下一個空位。參考絕對定位的圖形。blog
注意:此時的父容器是沒有設置寬高的,(見圖),咱們能夠看見父容器寬度爲100%,高度自適應。繼承
下面咱們把父容器的定位改爲absolute
文檔
2.父容器的position
屬性爲absolute
it
能夠看出,div-a脫離了文檔流,相對於父容器向右偏移了350px,後面的div-b佔據了他的位置.
注意:此時咱們能夠發現,父容器寬和高都是自適應的。
而後咱們在對兩種狀況進行研究。
static
父容器寬度爲100%,高度自適應。
fixed
父容器寬高均自適應
從這裏面。咱們不只能夠看出inherit
的特性。並且咱們還發現瞭如下規則:
重點
在父容器沒有設置寬高的時候,
relative
和static
時,及沒有脫離文檔流時,寬度爲100%absolute
和fixed
時,及脫離文檔流時,寬高爲自適應