suchen
HeimWeb-FrontendCSS-TutorialWarum scheint eine Div mit negativem Rand *zwischen* den Inhalt und den Hintergrund einer anderen Div zu gleiten?

Why Does a Negatively Margined Div Appear to Slide *Between* the Content and Background of Another Div?

Überlappung von Inhalten durch überlappende Elemente: Das Rätsel verstehen

Einführung

In diesem Zusammenhang haben wir zwei Divs ohne welche komplexes Styling (einfach Hintergrundfarbe). Wir manipulieren das zweite Div so, dass es das erste überlappt, indem wir einen negativen Rand oben anwenden. Anstatt jedoch zu sehen, dass ein Element das andere vollständig überlappt, stellen wir fest, dass das zweite Div zwischen dem Inhalt und dem Hintergrund des ersten Div gleitet und ein unerwartetes Verhalten zeigt.

Die Malreihenfolge

Um dieses Verhalten zu verstehen, müssen wir uns mit den Feinheiten der Malreihenfolge in Browsern befassen. Die Malreihenfolge für Elemente innerhalb eines Stapelkontexts folgt einer vordefinierten Reihenfolge:

  1. Hintergrundfarbe des Elements, auch wenn es das Stammelement ist.
  2. Hintergrundbild des Elements, auch wenn Es ist das Wurzelelement.
  3. Inhalt des Elements, wie Text und Bilder, von unten nach unten gemalt oben.
  4. Hintergrund und Rand der untergeordneten Elemente.

Erklärung der Überlappung

In unserem Beispiel, wenn das zweite Div das erste überlappt , erfolgt die folgende Malsequenz:

  1. Die Hintergrundfarbe des zweiten Divs wird über die ersten Divs gemalt Hintergrund.
  2. Der Inhalt des ersten Divs wird gemalt.
  3. Der Inhalt des zweiten Divs wird über den Inhalt des ersten Divs gemalt.

Da der Inhalt von Das erste Div wird vor dem Hintergrund des zweiten Div gemalt. Der Text scheint über dem grünen Hintergrund positioniert zu sein, wodurch die Illusion entsteht, dass das zweite Div dazwischen gleitet

Ändern des Verhaltens

Während die Standard-Malreihenfolge zu solchen Situationen führen kann, ist es möglich, das Verhalten zu ändern, indem Sie die Deckkraft des überlappenden Elements auf a setzen Wert kleiner als 1. Dadurch wird der Schritt zum Malen der Deckkraft vor dem Schritt zum Malen des Inhalts ausgelöst, um sicherzustellen, dass der Hintergrund des überlappenden Elements darunter erscheint Inhalt.

In unserem Beispiel führt das Hinzufügen von opacity: 0,9999 zum zweiten Div zum erwarteten Verhalten, bei dem der grüne Hintergrund den Inhalt des ersten Div vollständig abdeckt.

Referenz

Eine ausführliche Erläuterung der CSS-Malreihenfolge finden Sie im offiziellen W3C Dokumentation:

https://www.w3.org/TR/css-backgrounds-3/#box-painting

Das obige ist der detaillierte Inhalt vonWarum scheint eine Div mit negativem Rand *zwischen* den Inhalt und den Hintergrund einer anderen Div zu gleiten?. 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
Hinzufügen von Kastenschatten zu WordPress -Blöcken und -ElementenHinzufügen von Kastenschatten zu WordPress -Blöcken und -ElementenMar 09, 2025 pm 12:53 PM

Die CSS-Box-Shadow- und Umrisseigenschaften haben Thema gewonnen. JSON-Unterstützung in WordPress 6.1. Sei ein paar Beispiele für die Funktionsweise in realen Themen und welche Optionen wir diese Stile auf WordPress -Blöcke und Elemente anwenden müssen.

Arbeiten mit GraphQL CachingArbeiten mit GraphQL CachingMar 19, 2025 am 09:36 AM

Wenn Sie kürzlich mit GraphQL gearbeitet oder seine Vor- und Nachteile überprüft haben, haben Sie zweifellos Dinge wie "GraphQL nicht unterstützen Caching" oder gehört

Machen Sie Ihren ersten Seltsamen -Sufle -ÜbergangMachen Sie Ihren ersten Seltsamen -Sufle -ÜbergangMar 15, 2025 am 11:08 AM

Die Sufelte Transition -API bietet eine Möglichkeit, Komponenten zu beleben, wenn sie das Dokument eingeben oder verlassen, einschließlich benutzerdefinierter Svelte -Übergänge.

Edle und coole CSS -Scrollbars: Ein SchaufensterEdle und coole CSS -Scrollbars: Ein SchaufensterMar 10, 2025 am 11:37 AM

In diesem Artikel werden wir in die Welt der Scrollbars eintauchen. Ich weiß, es klingt nicht zu glamourös, aber vertrau mir, eine gut gestaltete Seite geht Hand in Hand

Show, Don ' TellShow, Don ' TellMar 16, 2025 am 11:49 AM

Wie viel Zeit damit, die Inhaltspräsentation für Ihre Websites zu entwerfen? Wenn Sie einen neuen Blog -Beitrag schreiben oder eine neue Seite erstellen, denken Sie darüber nach

Aufbau einer Ethereum -App mit Redwood.js und FaunaAufbau einer Ethereum -App mit Redwood.js und FaunaMar 28, 2025 am 09:18 AM

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Was zum Teufel haben NPM -Befehle?Was zum Teufel haben NPM -Befehle?Mar 15, 2025 am 11:36 AM

NPM-Befehle führen verschiedene Aufgaben für Sie aus, entweder als einmalige oder als kontinuierlich ausgeführter Vorgang für Dinge wie das Starten eines Servers oder das Kompilieren von Code.

Verwenden wir (x, x, x, x), um über Spezifität zu sprechenVerwenden wir (x, x, x, x), um über Spezifität zu sprechenMar 24, 2025 am 10:37 AM

Ich habe mich neulich mit Eric Meyer unterhalten und erinnerte mich an eine Eric Meyer -Geschichte aus meinen prägenden Jahren. Ich habe einen Blog -Beitrag über CSS -Spezifität geschrieben, und

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version