設置為絕對定位的元素框從文檔流完全刪除扛拨,并相對于其包含塊定位揣云,包含塊可能是文檔中的另一個元素或者是初始包含塊摩梧。元素原先在正常文檔流中所占的空間會關閉,就好像該元素原來不存在一樣冶忱。元素定位后生成一個塊級框,而不論原來它在正常流中生成何種類型的框席覆。
CSS 絕對定位
絕對定位使元素的位置與文檔流無關销睁,因此不占據(jù)空間。這一點與相對定位不同诵姜,相對定位實際上被看作普通流定位模型的一部分汽煮,因為元素的位置相對于它在普通流中的位置。
普通流中其它元素的布局就像絕對定位的元素不存在一樣:
<pre style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; margin: 15px 0px 0px; padding: 20px; border: 1px dotted rgb(119, 136, 85); font-family: Consolas; width: 765px; background-color: rgb(245, 245, 245); line-height: 1.4; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-size: 14px; text-align: left;">#box_relative {
position: absolute;
left: 30px;
top: 20px;
}
</pre>
如下圖所示:
CSS 絕對定位實例
絕對定位的元素的位置相對于最近的已定位祖先元素棚唆,如果元素沒有已定位的祖先元素暇赤,那么它的位置相對于最初的包含塊。
對于定位的主要問題是要記住每種定位的意義宵凌。所以鞋囊,現(xiàn)在讓我們復習一下學過的知識吧:相對定位是“相對于”元素在文檔中的初始位置,而絕對定位是“相對于”最近的已定位祖先元素瞎惫,如果不存在已定位的祖先元素失暴,那么“相對于”最初的包含塊。
注釋:根據(jù)用戶代理的不同微饥,最初的包含塊可能是畫布或 HTML 元素逗扒。
提示:因為絕對定位的框與文檔流無關,所以它們可以覆蓋頁面上的其它元素欠橘【丶纾可以通過設置 z-index 屬性來控制這些框的堆放次序。