>웹 프론트엔드 >CSS 튜토리얼 >Internet Explorer 7에서 내 Z-색인이 작동하지 않는 이유는 무엇입니까?

Internet Explorer 7에서 내 Z-색인이 작동하지 않는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-29 14:26:19874검색

Why Doesn't My Z-Index Work in Internet Explorer 7?

IE7 Z-Index 계층화 문제: 스택 컨텍스트 딜레마

CSS 속성인 Z-index는 HTML 요소의 계층화를 허용합니다. 웹페이지에서. 그러나 Internet Explorer 7(IE7)은 Z-인덱스 레이어링에서 비정상적인 동작을 나타냅니다.

이 시나리오에서 개발자는 UL 목록에 높은 Z-인덱스(1000)를 설정하여 div와 겹치도록 했습니다. . 그러나 div는 UL 앞에 계속 표시되었습니다. 문제는 스택 컨텍스트에 대한 IE7의 해석에 있습니다.

스태킹 컨텍스트는 브라우저의 렌더링 프로세스에서 생성된 독립적인 레이어로, 여기서 z-index 값은 각 컨텍스트 내에서 별도로 평가됩니다. IE7은 CSS 사양에 다르게 명시되어 있더라도 명시적인 z-index가 없는 위치 지정 요소를 새로운 스택 컨텍스트를 생성하는 것으로 해석합니다.

문제를 해결하려면 위치 지정 범위 요소에 명시적인 z-index 값을 추가하세요.

#envelope-1 {
    position: relative;
    z-index: 1;
}

이것은 범위에 대한 새로운 스택 컨텍스트를 생성하고 UL 목록이 다음과 같이 div와 겹치도록 합니다. 의도한 것입니다.

또는 범위에 대한 위치:상대적 사용을 피하도록 문서를 다시 디자인하십시오. 이렇게 하면 별도의 스택 컨텍스트가 생성됩니다.

<div>
    <label>Input #1:</label> <input>
    <ul>
        <li>item</li>
        <li>item</li>
        <li>item</li>
        <li>item</li>
    </ul>
</div>

스태킹 컨텍스트의 개념을 이해하고 IE7에서의 해석을 통해 개발자는 브라우저별로 불일치가 발생하는 경우에도 요소의 계층화를 효과적으로 제어할 수 있습니다.

위 내용은 Internet Explorer 7에서 내 Z-색인이 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.