Heim >Web-Frontend >CSS-Tutorial >Warum unterbricht die feste Positionierung die Z-Index-Reihenfolge?

Warum unterbricht die feste Positionierung die Z-Index-Reihenfolge?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-20 04:53:08981Durchsuche

Why Does Fixed Positioning Break Z-Index Ordering?

Verstehen Sie das Z-Index-Paradoxon mit fester Positionierung

Beim Umgang mit HTML-Elementen steuert die Z-Index-Eigenschaft die Stapelreihenfolge und bestimmt welches Element über oder unter anderen auf der Seite erscheint. Allerdings tritt ein unerwartetes Verhalten auf, wenn Z-Index mit fest und statisch positionierten Elementen verwendet wird.

Beachten Sie den folgenden Codeausschnitt:

#over {
  width: 600px;
  z-index: 10;
}

#under {
  position: fixed;
  top: 5px;
  width: 420px;
  left: 20px;
  z-index: 1;
}

Sie würden erwarten, dass das Element mit #over angezeigt wird hinter #under, da es einen höheren Z-Index-Wert hat. Das feste Element (#under) überlagert jedoch hartnäckig #over und ignoriert seine vermeintlich niedrigere Priorität.

Das liegt daran, dass durch die feste Positionierung ein Element aus dem normalen Dokumentenfluss entfernt wird. Es positioniert das Element basierend auf dem Ansichtsfenster und erstellt im Wesentlichen eine separate Ebene darüber. Daher interagiert der Z-Index fester Elemente nicht mit dem Z-Index nicht fester Elemente.

Um dieses Problem zu beheben und zu ermöglichen, dass #over hinter #under erscheint, fügen Sie position: relative hinzu ; zu #over:

#over {
  width: 600px;
  z-index: 10;
  position: relative;
}

Diese kleine Anpassung erstellt einen neuen lokalen Stapelkontext innerhalb von #over und ermöglicht seinem Z-Index, Elemente in diesem Kontext zu beeinflussen. Jetzt wird #under korrekt hinter #over angezeigt, wobei die beabsichtigte Stapelreihenfolge beachtet wird.

Denken Sie daran, dass die feste Positionierung ein leistungsstarkes Werkzeug zum Erstellen einer absoluten Positionierung auf der Seite ist, bei der Interaktion mit dem Z-Index jedoch Einschränkungen unterliegt in bestimmten Szenarien. Durch die Anwendung des Tricks „Position: Relativ“ können Sie die Kontrolle über die Stapelreihenfolge wiedererlangen und die gewünschten Schichtungseffekte erzielen.

Das obige ist der detaillierte Inhalt vonWarum unterbricht die feste Positionierung die Z-Index-Reihenfolge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn