Home >Web Front-end >CSS Tutorial >How to Resolve Z-Index Issues with Divs in Internet Explorer 6 and 7?
Internet Explorer 6 and 7 Z-Index Problem
Issue:
On the website http://madisonlane.businesscatalyst.com, an issue arises where the div#sign-post fails to overlap the div#bottom, even though it should be displayed above it. In addition, an extra 198px appears at the top of div#bottom in IE6.
Understanding Z-Index and Stacking Contexts
The z-index property determines the layering of elements in HTML. However, in IE6 and IE7, the standard behavior differs slightly.
According to the specification, elements with a non-default position attribute create a new "stacking context." Elements within the same stacking context are compared based on their z-index values, and the element with the higher value appears on top.
In the case of the given website, the problem arises because IE6 and IE7 create stacking contexts for both div#sign-post and div#bottom, even though they lack explicit z-index values. As a result, document order overrides the desired z-index ordering.
Solution:
To resolve the issue, it is necessary to create a parent element that acts as the "stacking parent" for both div#sign-post and div#bottom. This element should have a non-default position attribute (e.g., relative or absolute) and an explicit z-index value.
By doing so, you ensure that the ordering of div#sign-post and div#bottom is determined within the same stacking context, and the desired z-index precedence is established.
The above is the detailed content of How to Resolve Z-Index Issues with Divs in Internet Explorer 6 and 7?. For more information, please follow other related articles on the PHP Chinese website!