最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

css z-index 在IE中的迷惑

  發(fā)布時(shí)間:2009-05-29 20:57:30   作者:佚名   我要評(píng)論
z-index屬性簡(jiǎn)介 引用: z-index : auto | number auto:默認(rèn)值。 number:無(wú)單位的整數(shù)值,可為負(fù)數(shù)。 z-index 值較大的元素將疊加在z-index值較小的元素之上。對(duì)于未指定此屬性的定位對(duì)象,z-index 值為正數(shù)的對(duì)象會(huì)在其之上,而z-index 值為負(fù)數(shù)的對(duì)象在其之下。
z-index屬性簡(jiǎn)介

引用:
z-index : auto | number

auto:默認(rèn)值。
number:無(wú)單位的整數(shù)值,可為負(fù)數(shù)。

z-index 值較大的元素將疊加在z-index值較小的元素之上。對(duì)于未指定此屬性的定位對(duì)象,z-index 值為正數(shù)的對(duì)象會(huì)在其之上,而z-index 值為負(fù)數(shù)的對(duì)象在其之下。

注意:這個(gè)屬性不會(huì)作用于窗口控件,如selct 對(duì)象。在IE 5.5+中,iframe 對(duì)象開始支持此屬性。而在之前的瀏覽器版本中,iframe 對(duì)象是窗口控件,會(huì)忽略此屬性。

z-index屬性適用于定位元素(position 屬性值為 relative 或 absolute 或 fixed的對(duì)象),用來(lái)確定定位元素在垂直于顯示屏方向(稱為Z軸)上的層疊順序(stack order)。

每一個(gè)定位元素都?xì)w屬于一個(gè)stacking context。根元素形成root stacking context,而其他的stacking context則由定位元素產(chǎn)生(此定位元素的z-index被定義一個(gè)非auto的z-index值),定位子元素會(huì)以這個(gè)local stacking context為參考,用相同的規(guī)則來(lái)決定層疊順序。并且stacking context和 containing block 之間并沒(méi)有必然聯(lián)系。

當(dāng)stacking context一樣的時(shí)候,就用z-index的值來(lái)決定怎樣顯示,如果z-index也相同(即stack level相同),則按照檔中后來(lái)者居上的原則(back-to-front )的順序來(lái)層疊。

當(dāng)任何一個(gè)元素層疊另一個(gè)包含在不同stacking context元素時(shí),則會(huì)以stacking context的層疊級(jí)別(stack level)來(lái)決定顯示的先后情況。也就是說(shuō),在相同的stacking context下才會(huì)用z-index來(lái)決定先后,不同時(shí)則由stacking context的z-index來(lái)決定。例如:
定位元素A(z-index:100)里面有定位元素A1(z-index:300),而定位元素B和元素A兄弟關(guān)系(z-index:200)。你會(huì)發(fā)現(xiàn)無(wú)論A1的z-index是多大,也會(huì)被z-index是200的B所覆蓋,因?yàn)锳的z-index只有100。

IE中z-index BUG
首先先來(lái)看一個(gè)演示例子的代碼部分。
XHTML部分: <div id="container">
<div id="box1">這個(gè)box應(yīng)該在上面</div>
</div>
<div id="box2">這個(gè)box應(yīng)該在下面,IE瀏覽器會(huì)對(duì)定位元素產(chǎn)生一個(gè)新的stacking context ,甚至當(dāng)元素 z-index的為“auto”。</div>
CSS部分:

#container { position: relative; }
#box1 { position: absolute; top: 100px; left: 210px; width: 200px; height: 200px; background-color: yellow; z-index: 20; }
#box2 { position: absolute; top: 50px; left: 160px; width: 200px; height: 200px; background-color: green; z-index: 10; }
兩個(gè)box被完全的定位,背景色為黃色的box1擁有z-index屬性值20,而背景色為綠色的box2擁有z-index屬性值10,唯一的區(qū)別在于背景色為黃色的box1被放在了一個(gè)定義了屬性position:relative的div中,并且在文檔源代碼中位前。

根據(jù)上述代碼以及z-index的屬性簡(jiǎn)介,我們來(lái)分析上面代碼將會(huì)產(chǎn)生的效果位置。

CSS specification 中清楚的規(guī)定了除了根元素,只有定位元素的z-index被定義一個(gè)非auto的z-index值才能產(chǎn)生新的stacking context。而例子中被相對(duì)定位的元素并沒(méi)有定義z-index,即z-index為默認(rèn)值auto。所以按理他不會(huì)影響子元素的層疊順序。即背景色為黃色的box1和背景色為綠色的box2的stacking context相同,即都為根元素產(chǎn)生的root stacking context。再根據(jù)規(guī)則中當(dāng)stacking context一樣的時(shí)候,就用z-index的值來(lái)決定怎樣顯示的原理,則應(yīng)該z-index屬性值20的背景色為黃色的box1在z-index屬性值10背景色為綠色的box2之上。

相關(guān)文章

最新評(píng)論

林口县| 拉萨市| 吕梁市| 古蔺县| 苍溪县| 邯郸县| 宿迁市| 萝北县| 黄陵县| 枣强县| 师宗县| 永修县| 静海县| 绥芬河市| 永仁县| 伊金霍洛旗| 平罗县| 铁岭市| 阿瓦提县| 新龙县| 宜良县| 宁津县| 定结县| 抚松县| 昌黎县| 皮山县| 苏尼特右旗| 桃源县| 峨山| 峨眉山市| 曲松县| 泸州市| 九寨沟县| 浑源县| 美姑县| 普格县| 隆林| 沙洋县| 海门市| 彰武县| 武胜县|