中文字幕在线直播,成人免费图片免费观看,国内精品国语自产拍在线观看,国产欧美精品区一区二区三区

簡(jiǎn)潔的網(wǎng)頁設(shè)計(jì)幫你拉顧客
時(shí)間:2008年08月29日 內(nèi)容來源: 互諾科技 瀏覽量:0

原文:http://rong179.blogbus.com/logs/24966909.html

聲明

定位元素:position屬性值設(shè)置除默認(rèn)值static以外的元素,包括relative,absolute,fixed。
平臺(tái):win/IE win/FF

z-index:

用來確定定位元素在垂直于顯示屏方向(以下稱為Z軸)上的層疊順序

值:   auto | 整數(shù) | inherit
默認(rèn):  auto
適用于: 定位元素
繼承性: no

理解stacking context

每個(gè)box都?xì)w屬于一個(gè)stacking context,它是元素在z軸方向上定位的參考。根元素形成 root stacking context,其他stacking context由定位元素設(shè)置z-index為非auto時(shí)產(chǎn)生。如#div1{position:relative;z-index:0;}即可使 id=div1的元素產(chǎn)生stacking context。stacking context和 containing block 并沒有必然聯(lián)系。

理解stack level

在一個(gè)stacking context中的每個(gè)box,都有一個(gè)stack level(即層疊級(jí)別,以下統(tǒng)一用stack level),它決定著在同一stacking context中每個(gè)box在z軸上的顯示順序。同一stacking context中,stack level值大的顯示在上,stack level值小的顯示在下,同一stack level的遵循后來居上的原則(back-to-front )。不同stacking context中,元素顯示順序以父級(jí)的stacking context的stack level來決定顯示的先后情況。于自身stack level無關(guān)。注意stack level和z-index并不是統(tǒng)一概念。(將在后文慢慢理解)

stack level規(guī)則

每個(gè)stacking context中可包含塊級(jí)(block)元素、內(nèi)聯(lián)(行內(nèi)inline)元素,還有設(shè)置float屬性的元素、定位元素等等他們?cè)谕桓讣?jí) stacking context中的顯示順序是怎樣的?即stack level是怎樣的呢?比如一個(gè)塊級(jí)元素和內(nèi)聯(lián)元素發(fā)生層疊的話誰會(huì)在上面呢?是不是誰在后面誰就在上面呢?

根據(jù)w3c關(guān)于stack level的介紹可以得出以下stack level規(guī)則

每個(gè)stacking context都包括以下stack level (后來居上):

  1. 父級(jí)stacking context的背景、邊界
  2. z-index值為負(fù)值的定位元素(值越小越在下)
  3. 文本流中非定位的、block塊級(jí)子元素
  4. 文本流中非定位的、float浮動(dòng)子元素
  5. 仿佛能產(chǎn)生stacking context的inline元素
    否則,inline元素的stack level將在block元素之前。
  6. z-index:auto/0的定位元素
  7. z-index值為正的定位元素(值越大越在上)

以上stack level在瀏覽器執(zhí)行情況:

firefox3.0下測(cè)試完全吻合,firefox2.0下稍有不同即:“z-index值為負(fù)值的定位元素”在“父級(jí)stacking context的背景、邊界”之前。
ie6.0和7.0中:inline元素的stack level位于block元素之前,且“文本流中非定位的、float浮動(dòng)子元素”(以下簡(jiǎn)稱浮動(dòng)元素)和“文本流中非定位的、block塊級(jí)子元素”(以下簡(jiǎn)稱block元素)處于同一級(jí)。