五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > css層的定位position、absolute、relative層疊加的五條疊加法則

css層的定位position、absolute、relative層疊加的五條疊加法則

文章來源:365jz.com     點(diǎn)擊數(shù):778    更新時(shí)間:2011-03-03 15:56   參與評(píng)論

css層的定位position、absolute、relative層疊加的五條疊加法則

貌似很多同學(xué)對(duì)為什么這個(gè)div在上層,那個(gè)div在下層、無論如何設(shè)置z-index都無法居上的問題糾結(jié)抓狂、上吐下瀉、惡心失眠、郁郁而終,致使不敢隨意使用層的疊加。但層的疊加效果,在交互設(shè)計(jì)中卻頻頻出現(xiàn),所以我們必須駕馭它,要駕馭它,就要掌握其規(guī)律。

首先明確幾點(diǎn)在文中所需要用到的概念:

靜態(tài)定位:position:static(為position屬性的默認(rèn)值)。
動(dòng)態(tài)定位:position:relative或position:absolute或position:fixed。
祖元素:任意包含該元素的元素。
父元素:直接包含該元素的祖元素。
同輩元素:擁有共同的父元素的元素。

注:這些概念為作者自定義,僅用于本文。

接下來看看這五條法則:

法則一:同輩元素定位方式相同,且無z-index設(shè)置時(shí),html靠后者居上。

法則二:同輩元素同為動(dòng)態(tài)定位時(shí),且有z-index設(shè)置時(shí),z-index值大者居上。

法則三:同輩元素定位方式不同時(shí),動(dòng)態(tài)定位居上。

法則四:非同輩元素,任意一者及其祖元素不具備動(dòng)態(tài)布局時(shí),html靠后者居上。

法則五:【重要】非同輩元素,任意一者或其祖元素?fù)碛袆?dòng)態(tài)定位時(shí),同時(shí)各自向上尋找動(dòng)態(tài)定位的祖元素,并分別從中拿出具備最高級(jí)別的祖元素(或其本身)進(jìn)行比較。

情況1:子元素的z-index無論多大,父元素大者居上。

情況2:父元素居下,子元素也可以居上。

情況1、情況2結(jié)合擴(kuò)展比較:

引用:
其實(shí)前四點(diǎn)都是基礎(chǔ),只有第五點(diǎn)比較難于理解,這里詳細(xì)解釋一下:

<div id="ab" style="position:absolute;">
<div id="a" style="position:relative; z-index:100;">
<div id="a_inner1">
<div id="a_inner2">
<div id="a_inner3" style="position:relative; z-index:98;">
<div id="a_inner4">
<div id="a_inner5">
</div>
</div>
</div>
</div>
</div>
</div>
<div id="b">
<div id="b_inner1">
<div id="b_inner2">
<div id="b_inner3" style="position:relative; z-index:99;">
<div id="b_inner4">
</div>
</div>
</div>
</div>
</div>
</div>

在這個(gè)例子中,我們來比較div#a_inner5和div#b_inner4的層疊關(guān)系。
到它們所共同擁有的祖元素 div#ab的下一級(jí)為止,div#a_inner5的祖元素包 括:div#a,div#a_inner1,div#a_inner2,div#a_inner3,div#a_inner4;div#b_inner4 的祖元素包括:div#b,div#b_inner1,div#b_inner2,div#b_inner3。
然后分析它們的祖元素中具有動(dòng)態(tài)定位的:div#a_inner5的祖元素中含有動(dòng)態(tài)定位的元素有:div#a,div#a_inner3;div#b_inner4的祖元素中含有動(dòng)態(tài)定位的元素有:div#b_inner3。
然后再拿出最高級(jí)進(jìn)行比較:div#a > #div#b_inner3。

父元素居下,子元素也可以居上的情況,則是利用非同輩元素在祖元素具備動(dòng)態(tài)布局時(shí),其比較已經(jīng)與position:static無關(guān),而其祖元素卻可以通過html的位置來進(jìn)行比較。

 

如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲瑥V大熱心網(wǎng)友會(huì)為你解答??! 點(diǎn)擊進(jìn)入論壇

發(fā)表評(píng)論 (778人查看,0條評(píng)論)
請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)