죄송합니다. 완전한 코드를 게시 할 수 없으며 독점적 인 작업을하고 있습니다. 기본적으로 나는 Z- 인덱스 6을 가진 DIV가 Z- 인덱스 5를 갖는 오버레이 DIV에 의해 차단되고있는 문제가 있습니다. 이런 일이 일어날 수있는 시나리오가 있습니까? 왜 이런 일이 일어나고 있는지 알아 내려고 노력하고 있습니다. 그것은 단지 말이되지 않습니다. 중첩 DIV와 관련이 있거나 CSS position
일 가능성이 있습니까?내가 알아야 할 z- 색인에 관한 이상한 규칙은 무엇입니까?
나는 모호한 점에 대해 사과드립니다. JSFiddle에서 다시 만들려고했지만 불행히도 예상대로 작동합니다. 실제 코드 만이 불안정합니다.
구조 :
<div id="window">
<div id="wall">
<div class="box" /><div class="box" /> .... many boxes
</div>
</div>
<div id="overlay" />
CSS :
이 $('<div id="overlay"></div>').css({
'left': $('#window').position().left + 'px',
'top': $('#window').position().top + 'px',
'width': $('#window').width() + 'px',
'height': $('#window').height() + 'px',
'opacity': 0.8
}).appendTo('body');
상자 중 하나가 Z-을 가지고 있지만 :
#window {
position: relative;
width: 960px;
height: 700px;
overflow: hidden;
background: #666;
}
#wall {
position: relative;
width: 1640px;
height: 1600px;
-webkit-perspective: 2000;
}
#overlay {
position: absolute;
z-index: 5;
background: #000;
}
.box {
left: 0px;
top: 0px;
position: absolute;
width: 228px;
height: 228px;
color: #fff;
font-family: Helvetica, Arial, sans-serif;
font-weight: bold;
font-size: 0.8em;
-webkit-transform-style: preserve-3d;
z-index: 4;
cursor: pointer;
}
오버레이 크기는 특정 이벤트에 jQuery를 통해 설정된다 인덱스 6, 오버레이 5 일 때, 오버레이는 여전히 상기 박스 위에있다.
오버레이는 창 위로 이동해야하지만 해당 상자 중 하나를 통과시킵니다.
왜이 일을 JSFiddle 작동하지만 내 실제 코드 않습니다! http://jsfiddle.net/csaltyj/2gzTc/
z-index는 position이 정의 된 경우에만 작동합니다 ... 아마도 z- 인덱스 6이 적용되지 않은 것일 수 있습니다. html을 확인하십시오 –
요소가 형제가 아닌 경우 작동하지 않을 수 있습니다. – gilly3
익스플로러는 '절대'항목과 '상대'항목을 혼합 할 때 Z- 색인을 별개의 '집합'으로 구분하는 것으로 알려져 있습니다.모든 '절대'위치 요소는 하나의 z- 인덱스를 가지며 모든 '상대'위치 요소는 다른 요소를 무시하는 완전히 독립적 인 z- 인덱스를가집니다. 나는이 버크를 가진 다른 브라우저가 없다는 것을 알고 있으므로이 브라우저는 쉽게 분리 될 수 있어야합니다. – Sparky