position: relative
相対的に配置された要素内に固定位置要素がありますが、要素が影響を与えてはならないという限りですposition: fixed
(固定要素はウィンドウに対して相対的に配置されますよね?)。
ただし、固定要素の z-index は親によって継承されているようで、その z-index が親の z-index よりも高くなることはできません。
私は理にかなっていると思いますか?以下は、私が話していることの HTML の例です。
.outer {
position: relative;
z-index: 2;
}
.inner {
background: #fff;
left: 50px;
position: fixed;
top: 40px;
z-index: 1000000;
}
.fade {
background: #555;
bottom: 0;
left: 0;
opacity: 0.5;
position: fixed;
right: 0;
top: 0;
z-index: 3;
}
<div class="outer">
<div class="inner">testing testing</div>
</div>
<div class="fade"></div>
以下を変更した場合:
.outer { position: relative; z-index: 4; }
次に、.inner
要素がフェード要素の前に表示されます。
この動作は非常に独特だと思います... div を移動したり、.inner
div の CSS を変更したりせずにこれを回避する方法はあり.outer
ますか?
上記のコードサンプルのフィドル: