IE는 아직 내 존재의 상처가되고 있습니다. 제가 작업하고있는 사이트의 상단에는 수평 메뉴가 있습니다.이 메뉴는 상위 메뉴 DIV (절대 위치)에 절대 위치에있는 순수 CSS 메뉴를 트리거합니다. 이렇게하면 IE와 W3C 호환 브라우저 모두에서 메뉴가 완벽하게 배치됩니다.IE는 위치가 지정된 요소에서 Z- 색인을 무시합니다.
더 많은 위치에있는 요소가 페이지 아래쪽에있을 때 문제가 발생합니다. 이것들은 절대적인 위치에 있어야하는 데이터가 있기 때문에 상대적인 위치에 있습니다. 다시 한번 테스트 한 모든 브라우저에서 올바르게 표시됩니다.
문제는 최상위 메뉴가 열리고 페이지 아래로 위치가 지정된 요소에 의해 부분이 가려져서 사실상 모두에 대해 정의 된 z- 인덱스 속성이 있더라도이 요소 아래에 위치한다는 것입니다. (CSS 파일과 인라인 모두).
IE가 제대로 표시되도록하는 유일한 방법은 메뉴의 실제 HTML을 페이지의 아래쪽에 (DOM 용어로) 페이지의 다른 위치에 배치하는 것입니다. 나는 이것을 절대 최후의 수단으로 만 할 것이다.
모든 요소는 동일한 유형 (div)입니다.
<div id='menu'>
<div id='cat_menu' style='display:none;z-index:10000;'>
<table cellspacing='0' cellpadding='0' class='brmenu' width='100%'>
[data]
</table>
</div>
<div class='product_new' style='z-index:20;'>[data]</div>
<div class='product_listing' style='background-color:#FFFFFF;'>[data]</div>
그리고 관련 CSS : 다음은 관련 HTML은
div#menu {
height: 26px;
padding: 0;
position: relative;
}
div#cat_menu {
position: absolute;
top: 25px;
left: 115px;
width: 300px;
z-index: 1000;
}
div.product_new {
background-image: url("/images/sp_images.png");
background-position: 0 -108px;
background-repeat: no-repeat;
padding 0px;
height: 40px;
font-size: 9pt;
margin-top: 5px;
position: relative;
z-index: 20;
}
프로토 타입 프레임 워크를 사용하고 있으므로 특히 jQuery를 사용하지 않는 것이 좋습니다. – mwieczorek