在CSS中,定位元素通常使用position屬性。默認(rèn)情況下,position屬性的值為static,它會(huì)讓元素保持在文檔流中,不會(huì)受到其它元素的影響。
div { position: static; }
如果想要讓元素相對(duì)于其它元素進(jìn)行定位,可以把position的值設(shè)置為relative。
div { position: relative; top: 20px; left: 30px; }
上面的代碼會(huì)讓div元素相對(duì)于原來(lái)的位置向上移動(dòng)20像素,向左移動(dòng)30像素。
如果想要讓元素脫離文檔流,可以把position的值設(shè)置為absolute。
div { position: absolute; top: 50px; left: 100px; }
上面的代碼會(huì)讓div元素相對(duì)于父元素進(jìn)行定位,而不考慮其它元素。注意,這里的父元素是指該元素在HTML結(jié)構(gòu)上的最近的非static定位的祖先元素。
另外,也可以使用fixed定位,它會(huì)讓元素相對(duì)于視口進(jìn)行定位。
div { position: fixed; top: 0; right: 0; }
上面的代碼會(huì)讓div元素始終停留在視口的右上角,不會(huì)隨著頁(yè)面的滾動(dòng)而改變位置。
最后,如果想要讓元素完全脫離文檔流,可以使用z-index屬性,它可以控制元素的層疊順序。
div { position: absolute; top: 0; left: 0; z-index: 1; } p { position: relative; z-index: 2; }
上面的代碼把一個(gè)div元素和一個(gè)p元素疊加在一起,z-index的值越大,元素就越靠近頂部。