1.文檔流
簡(jiǎn)單說(shuō)就是元素按照其在 HTML 中的位置順序決定排布的過(guò)程。HTML的布局機(jī)制就是用文檔流模型的,即塊元素(block)獨(dú)占一行,內(nèi)聯(lián)元素(inline)不獨(dú)占一行。
一般使用margin是用來(lái)隔開(kāi)元素與元素的間距;padding是用來(lái)隔開(kāi)元素與內(nèi)容的間隔。margin用于布局分開(kāi)元素使元素與元素互不相干;padding用于元素與內(nèi)容之間的間隔,讓內(nèi)容(文字)與(包裹)元素之間有一段“距離”。只要不是float和絕對(duì)定位方式布局的,都在文檔流里面。
2.position屬性介紹
3.相對(duì)定位
relative生成相對(duì)定位的元素,相對(duì)于其正常位置進(jìn)行定位。
相對(duì)定位完成的過(guò)程如下:
按默認(rèn)方式(static)生成一個(gè)元素(并且元素像層一樣浮動(dòng)了起來(lái))。相對(duì)于以前的位置移動(dòng),移動(dòng)的方向和幅度由 left、right、top、bottom 屬性確定,偏移前的位置保留不動(dòng)。
<style type="text/css"> #box1 { margin: 20px; width: 200px; height: 200px; background-color: yellow; } #box2 { margin: 20px; width: 200px; height: 200px; background-color: red; /*position: relative; left: 100px; top: 100px;*/ } </style> <div id="box1"></div> <div id="box2"></div>其中box2中的注釋代碼未生效前,是按照文檔流進(jìn)行排序呈現(xiàn)。
但是,當(dāng)注釋代碼取消注釋生效后,就會(huì)相對(duì)文檔流中應(yīng)當(dāng)呈現(xiàn)的位置進(jìn)行移動(dòng)。
所以,相對(duì)定位的參照物是它本身。
4.絕對(duì)定位
絕對(duì)定位與相對(duì)定位的一大不同之處就是,當(dāng)我們把一個(gè)元素設(shè)置成絕對(duì)定位,那么這個(gè)元素將會(huì)脫離文檔流,其他元素就會(huì)認(rèn)為這個(gè)元素不存在于文檔流中而填充它原來(lái)的位置。絕對(duì)定位元素根據(jù)它的參照物移動(dòng)自己的位置,而參照物則需要根據(jù)它祖先元素的定位設(shè)置來(lái)確定。
所謂根據(jù)它祖先元素的定位設(shè)置來(lái)確定簡(jiǎn)單理解為:相對(duì)于該元素最近的已定位的祖先元素,如果沒(méi)有一個(gè)祖先元素設(shè)置定位,那么參照物是body層。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選