IE 6 & IE 7 Z-Index: Hinter dem Stapelkontext
Bei der Arbeit mit IE 6 oder IE 7 kann es zu unerwarteten Ereignissen kommen Verhalten beim Versuch, Elemente mithilfe der Z-Index-Eigenschaft zu stapeln. Um das Problem zu verstehen, ist es wichtig, sich mit dem Konzept der „Stacking-Kontexte“ in CSS zu befassen.
Stacking-Kontexte
Gemäß der CSS-Spezifikation steuert der Z-Index die Stapelreihenfolge von Elementen innerhalb desselben „Stapelkontexts“. Ein Stapelkontext wird eingerichtet, wenn ein Element eine nicht automatische Position (absolut, fest oder relativ) und einen angegebenen Z-Index-Wert hat.
IE's Stacking Anomaly
IE 6 und IE 7 unterscheiden sich von anderen Browsern dadurch, dass positionierte Elemente (auch solche ohne explizit angegebenen Z-Index) implizit neue Stapelkontexte erstellen. Dieses Verhalten weicht von der CSS-Spezifikation ab.
Auswirkungen auf das Z-Index-Verhalten
Wenn in IE 6 und IE 7 für zwei Elemente der Z-Index festgelegt ist, erfolgt der Vergleich Die Bestimmung der Stapelreihenfolge erfolgt auf der Ebene ihrer Stapel-Eltern (typischerweise ihrer positionell nicht statischen Vorfahren). Wenn diese übergeordneten Elemente keinen angegebenen Z-Index haben, bestimmt die Dokumentreihenfolge die Stapelung.
Problemumgehung
Um dieses Problem zu beheben, legen Sie explizit Z-Index-Werte für die übergeordneten Elemente des Stapels fest der Elemente, die Sie richtig stapeln möchten. Beginnen Sie bei den unteren übergeordneten Elementen und arbeiten Sie sich in der Verschachtelungshierarchie nach oben, indem Sie abnehmende Z-Indexwerte zuweisen, um die richtige Reihenfolge sicherzustellen.
Wenn Sie das Verhalten von Stapelkontexten in IE 6 und IE 7 verstehen, können Sie die z effektiv manipulieren -index-Eigenschaft, um die gewünschten Stapelergebnisse ohne unerwartete Konsequenzen zu erzielen.
Das obige ist der detaillierte Inhalt vonWarum verhält sich Z-Index in IE 6 und IE 7 unterschiedlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!