W3Cが実装を作成せずに標準を定義するという事実は、どのブラウザーが「正しいか間違っているか」に関係なく、異なる解釈につながるものです。
すべてのブラウザで必要なことを実行する適切な方法は、次のようなものです。
<div style="position:relative; z-index:1;"> OUTERFOO
<div style="position:relative; z-index:1;">OUTERBAR
<div style="position:absolute; z-index:1;">BAR</div>
</div>
<div style="position:absolute; z-index:2;">FOO</div>
</div>
また
<div style="position:relative; z-index:1;"> OUTERFOO
<div style="position:relative; z-index:1;">OUTERBAR
<div style="position:absolute; z-index:1;">BAR</div>
<div style="position:absolute; z-index:2;">FOO</div>
</div>
</div>
ばかげた数のziindexesの必要はありません-それは混乱につながります。
基本的に、z-indexを使用する場合は、わかりやすくするために、すべての兄弟要素と親要素を配置し、すべての兄弟をz-indexする必要があります。これははるかに多くの頭痛の種になります。
質問でこれを行おうとした方法は、これと同じ方法で階層化の基本的なルールに違反します。たとえば、次のようになります。
<div><span></div></span>
cssを使用してhtml構文のネストルールを破るソリューションを探しています。私が提供する例は、それらのルールに従いながら、あなたが本当に望んでいることを達成します。