CSS中的“層疊順序”指的是網(wǎng)頁中各個元素的重疊順序,也就是說,當一個頁面上有多個元素時,這些元素究竟該如何被呈現(xiàn),哪一個元素會在前面,哪一個會在后面。在CSS中,我們可以通過z-index屬性來控制元素的層疊順序。
.element1 { z-index: 1; } .element2 { z-index: 2; }
z-index屬性的值越大,元素就越靠近頁面的最上層,也就是說,z-index值最大的元素會在最上層顯示,而z-index值最小的元素會在最下層顯示。
需要注意的是,z-index屬性只會對那些已經(jīng)被定位的元素才有效,也就是說,我們需要先使用position屬性將元素定位,才能使用z-index屬性。同樣,z-index屬性也不會對那些沒有塊級框的元素生效,如span等行內(nèi)元素。
.element { position: relative; z-index: 3; }
還需要理解的一個概念是盒模型。在CSS中,每個HTML元素都會被視為一個矩形的盒子,而我們通常將元素的內(nèi)容、內(nèi)邊距、邊框以及外邊距四個部分看作是盒模型分別的四個部分,這四個部分對應的就是display屬性值為block的元素的width、height屬性值,以及padding、border、margin屬性值。而在層疊順序的控制中,我們也需要考慮到這些盒模型的因素。
#box1 { position: absolute; top: 50px; left: 50px; width: 200px; height: 200px; background-color: red; z-index: 1; } #box2 { position: absolute; top: 100px; left: 100px; width: 200px; height: 200px; background-color: blue; z-index: 2; } #box3 { position: absolute; top: 150px; left: 150px; width: 200px; height: 200px; background-color: green; z-index: 3; }
當我們需要在一個頁面上呈現(xiàn)多個元素時,可以通過z-index屬性來控制各個元素的層疊順序,從而實現(xiàn)所需的呈現(xiàn)效果。記得要先使用position屬性將元素定位,否則z-index屬性將不會生效;同時,盒模型的因素也需要考慮到,特別是當元素的寬度和高度重疊時,需要通過padding、border、margin等屬性來調(diào)整各個元素的顯示效果。