1.絕對定位
position: absolute;絕對定位:絕對定位是相對於元素最近的已定位的祖先元素(即是設置了絕對定位或者相對定位的祖先元素)。如果元素沒有已定位的祖先元素,那么它的位置則是相對於最初的包含塊(body)。
絕對定位與文檔流無關,所以它們可以覆蓋頁面上其他的元素,可以通過z-index屬性來控制這些層的對方順序。
特點:
★元素使用絕對定位之后不占據原來的位置(脫標)
★元素使用絕對定位,位置是從瀏覽器出發。
★嵌套的盒子,父盒子沒有使用定位,子盒子絕對定位,子盒子位置是從瀏覽器出發
★嵌套的盒子,父盒子使用定位,子盒子絕對定位,子盒子位置是從父元素位置出發。
★給行內元素使用絕對定位之后,轉換為行內塊。(不推薦使用,推薦使用display:inline-block;)
2.相對定位
position: relative;相對定位:相對定位是相對於元素在文檔中的初始位置;
特點:
★使用相對定位,位置從自身出發。
★還占據原來的位置。
★子絕父相(父元素相對定位,子元素絕對定位)
★行內元素使用相對定位不能轉行內塊
注意,在使用相對定位時,無論是否進行移動,元素仍然占據原來的空間。后面是元素不會填補空位。因此,移動元素會導致它覆蓋其它框。
注意:position:absolute,float會隱式地改變display的類型(display:none除外)。即是當元素設置position:absolute、float:left、float:right中任意一個時,都會讓元素以display:inline-block的方式顯示(特點是:可以設置長寬,默認寬度不占滿父元素)。這時,即使故意設置display:inline; display:block都是無效的。
