關於HTML中,絕對定位,相對定位的理解...(學習HTML過程中的小記錄) 作者:王可利(Star·星星)
HTML中
相對定位:position:relative;
絕對定位:position:absolut;
1.相對定位(div與div之間的關系)
body 標簽其實就是一個大的盒子,在body里面設置 兩個盒子div1 和 div2 ,而且兩個盒子都給了它一個相對定位:position:relative;,那么div2 就會相對於 div1 排版,排在div1的下面,如果div2 給了一個浮動 float:left,那么div2 就會 和 div1並排。
如果在上面的基礎上,div1 和 div2 的里面都 添加一個 子盒子 ,div1 里面有一個 div3,div2里面有一個 div4,相對應地 div3 和 div4 也給了 相對定位的話 ,div3 就會相對 div1 這個父類來 相對定位,div4 就會相對 div2 這個父類來 相對定位。
如果div1里面 同時擁有 一個 div3 和 一個 div4 的話,div3 和 div4 就會在 div1這個父類里面進行相對定位,與 div2沒有直接的影響。。
2.絕對定位(div與div之間的關系)
絕對定位需要記住的口訣是:
1.絕對定位會找到與自己最近的父類來定位,不是自己的父類與自己無關。
2.絕對定位找到了自己的父類之后,要看這個父類是否進行了相對定位,沒有相對定位的話就不會找這個父類來定位。
總結:絕對定位會尋找一個 距離自己最近的 父類 ,並且這個父類進行了 相對定位,那么這個盒子就會找這個已經有了相對定位的父類來定位。
例子如下:
body標簽里面 定義盒子 div1,div1 包含 div2 ,div2 包含 div3 。
情況1:div1、div2 盒子 都設置了 相對定位 ,div3 設置了 絕對定位。
分析:body、div1、div2 都是 div3 的父類,而距離div3最近的父類是div2,所以div3 就會在 div2 里面進行絕對定位。。
情況2:div1設置了 相對定位 ,div2沒有設置相對定位,div3 設置了絕對定位。
分析:body、div1、div2 都是 div3 的父類,距離div3最近的父類是div2,但是div2 沒有設置 相對定位,所以就繼續找有相對定位的父類,div1 是 div3 的父類 ,進行了相對定位里面的父類 最近的那一個,那么 就會在 div1 里面進行絕對定位。。
這個是本人自己在學習當中總結的一些網頁相關的排版定位技巧,希望可以對大家有幫助。。有什么不足,由大家來補充。謝謝。。