在div+css的布局中的定位標(biāo)簽分為絕對(duì)定和相對(duì)定位,定位標(biāo)簽:position。屬性:relative(相對(duì)定位) ,absolute(絕對(duì)定位)。
現(xiàn)在長(zhǎng)沙做網(wǎng)站湘龍工作室給大家介紹下對(duì)定位和相對(duì)定位的區(qū)別。
1.position:relative; 如果對(duì)一個(gè)元素進(jìn)行相對(duì)定位,首先它將出現(xiàn)在它所在的位置上。然后通過(guò)設(shè)置垂直或水平位置,讓這個(gè)元素"相對(duì)于"它的原始起點(diǎn)進(jìn)行移動(dòng)。(再一點(diǎn),相對(duì)定位時(shí),無(wú)論是否進(jìn)行移動(dòng),元素仍然占據(jù)原來(lái)的空間。因此,移動(dòng)元素會(huì)導(dǎo)致它覆蓋其他框)
2.position:absolute; 表示絕對(duì)定位,位置將依據(jù)瀏覽器左上角開(kāi)始計(jì)算。 絕對(duì)定位使元素脫離文檔流,因此不占據(jù)空間。普通文檔流中元素的布局就像絕對(duì)定位的元素不存在時(shí)一樣。(因?yàn)榻^對(duì)定位的框與文檔流無(wú)關(guān),所以它們可以覆蓋頁(yè)面上的其他元素并可以通過(guò)z-index來(lái)控制它層級(jí)次序。z-index的值越高,它顯示的越在上層。)
3.父容器使用相對(duì)定位,子元素使用絕對(duì)定位后,這樣子元素的位置不再相對(duì)于瀏覽器左上角,而是相對(duì)于父窗口左上角。
一般來(lái)講,網(wǎng)頁(yè)居中的話用Absolute就容易出錯(cuò),因?yàn)榫W(wǎng)頁(yè)一直是隨著分辨率的大小自動(dòng)適應(yīng)的,而Absolute則會(huì)以瀏覽器的左上角為原始點(diǎn),不會(huì)應(yīng)為分辨率的變化而變化位置。很多人出錯(cuò)就在于這點(diǎn)上出錯(cuò)。而網(wǎng)頁(yè)居左其特性與Relative很相似,但是還是有本質(zhì)的區(qū)別的。
Relative,CSS中的寫(xiě)法是:position:relative; 他的意思是相對(duì)定位,他是參照父級(jí)的原始點(diǎn)為原始點(diǎn),無(wú)父級(jí)則以文本流的順序在上一個(gè)元素的底部為原始點(diǎn),配合TRBL進(jìn)行定位,當(dāng)父級(jí)內(nèi)有padding等CSS屬性時(shí),當(dāng)前級(jí)的原始點(diǎn)則參照父級(jí)內(nèi)容區(qū)的原始點(diǎn)進(jìn)行定位。
有時(shí)我們還需要依靠z-index來(lái)設(shè)定容器的上下關(guān)系,數(shù)值越大越在最上面,數(shù)值范圍是自然數(shù)。