6

z-index なしで HTML 要素のスタックがどのように発生するかをよく検索しましたが、具体的なものは見つかりませんでした。z-index のないスタックは、HTML の出現順に発生することがわかりました。

https://developer.mozilla.org/en-US/docs/CSS/Understanding_z-index/Stacking_without_z-index

この仕様は IE で有効ですか? 別の div に囲まれた 2 つの div があります。両方の div には絶対位置があります。

<div>
    <div id"div1" style="position:absolute"></div>
    <div id"div2" style="position:absolute"></div> 
</div>

div1 と div2 の両方の div で、 と の値leftwidth同じです。ここでの CSS の動作に関する私の理解から、div2 は常に div1 にオーバーラップする必要があります。「div1」が「div2」と重なる可能性は何ですか?

4

2 に答える 2

7

あなたの例では、参照したドキュメントによると、両方のdiv要素が配置されていますが、z-index がないため、優先順位は同じです (注: 配置されていない要素よりも高いスタック順序があります)。これは、それらがマークアップに表示される順序でスタックされ、最後に宣言された要素が最高のスタック インデックスを持つことを意味します。

したがって、その定義によれば、 が上に現れる可能性はありません。div1div2

詳細については、スタック コンテキストに関する W3C CSS2 仕様を参照してください。特に注意点8

'z-index: auto' または 'z-index: 0' で配置されたすべての子孫 (ツリー順)。

ソースで定義されている順序は、基本的にスタックの順序です ( z-indexequate を指定していませんz-index: auto)。

于 2013-01-04T15:00:25.403 に答える
1

両方の DIV の left プロパティと top プロパティを同じに設定すると、2 番目の DIV は常に最初の DIV とオーバーラップします。

それは私が知っていることです。

于 2013-01-04T14:54:29.770 に答える