定位流

相對定位(position:relative)
1.什麼是相對定位?相對定位就是相對於本身之前在標準流中的位置來移動。
2.注意點:
2.1)相對定位是不脫離標準流的,會繼續在標準流中佔用一份空間。相對定位須要配合top、bottom、left、right來使用。
2.2)在相對定位中同一個方向上的定位屬性只能使用一個。
2.3)因爲相對定位是不脫離標準流的,因此在相對定位中是區分塊級元素/行內元素/行內塊級元素。
2.4)因爲相對定位是不脫離標準流的,而且相對定位的元素會佔用標準流中的位置,因此當給相對定位的元素設置margin/padding等屬性的時候會影響到標準流的佈局(解釋:給相對定位設置margin、padding屬性的做用效果是在原來的位置上 )
3.運用場景:用於對元素進行微調(好比兩個元素要頂部對齊時使用)、配合絕對定位來使用。
絕對定位(position:absolute)
1.什麼是絕對定位?相對定位就是相對於body來定位。
2.注意點:
2.1)絕對定位的元素是脫離標準流的,也就是說絕對定位是不佔空間的。
2.2)絕對定位中是不區分塊級元素/行內元素/行內塊級元素,也就是說行內元素也能夠設置寬高了。
2.3)一個絕對定位的元素是以body做爲參考點,那麼實際上是以網頁首屏的寬度和高度做爲參考點,而不是以整個網頁的寬度和高度做爲參考點。
2.4)一個絕對定位的元素會忽略祖先元素的padding。
2.5)子絕父相
2.6)如何讓絕對定位的元素水平居中(絕對定位的元素對margin:0 auto不起效果):只須要設置絕對定位元素的left:50%;而後再設置絕對定位元素的margin-left:-元素寬度/2 px;
3.絕對定位的參考點
規律:1)默認狀況下全部的絕對定位的元素,不管有沒有祖先元素,都會以body做爲參考點。
2)若是一個絕對定位的元素有祖先元素,而且祖先元素也是定位流,那麼這個絕對定位的元素就會以定位流的那個祖先元素做爲參考點(注意點:只要是這個絕對定位元素的祖先元素均可以、這裏的定位流指的是絕對定位/相對定位/固定定位、只有靜態定位不行)。
3)若是一個絕對定位的元素有祖先元素,而且祖先元素也是定位流,並且祖先元素中有多個元素都是定位流,會以就近原則來選擇最終以哪一個祖先元素做爲參考點。
固定定位(position:fixed)
1.什麼是固定定位?固定定位和前面學習的背景關聯方式很像,背景定位可讓背景圖片不隨着滾動條的滾動而滾動,而固定定位可讓某個盒子不隨着滾動條的滾動而滾動。
2.注意點:
2.1)固定定位的元素是脫離標準流的,也就是說固定定位是不佔空間的。
2.2)固定定位和絕對定位同樣,是不區分塊級元素/行內元素/行內塊級元素,也就是說行內元素也能夠設置寬高了。佈局

相關文章
相關標籤/搜索