


Positionierungsdilemma: Überlappende Elemente mit absoluter Positionierung
Im Webdesign kann die Verwendung der absoluten Positionierung nützlich sein, um bestimmte Elementlayouts zu erstellen. Es kann jedoch auch zu Herausforderungen führen, insbesondere wenn versucht wird, Elemente vertikal nacheinander zu stapeln.
Beachten Sie das folgende CSS-Snippet:
body { position: relative; min-height: 2em; width: 100%; } .container { position: absolute; } .row { position: relative; } .col1, .col2 { position: absolute; }
Und den entsprechenden HTML-Code:
<div class="container"> <div> <p>Mit diesem Setup sollen die beiden <strong>.row</strong>-Elemente vertikal gestapelt werden, anstatt sich wie bisher zu überlappen Tun. Wie kann dies erreicht werden, ohne die absoluten/relativen Positionierungseigenschaften zu entfernen?</p> <p><strong>CSS-Positionierung verstehen</strong></p> <p>Um eine Lösung zu finden, ist es wichtig, die verschiedenen Arten der CSS-Positionierung zu verstehen :</p> <ul> <li> <strong>statisch</strong>: Elemente fließen normal im Dokument Layout.</li> <li> <strong>relativ</strong>: Elemente werden basierend auf den Versätzen oben, rechts, unten und links verschoben, bleiben aber im Dokumentfluss.</li> <li> <strong>absolut</strong> : Elemente werden aus dem Dokumentenfluss entfernt und relativ zu ihrem nächstgelegenen <strong>positionierten Vorgänger</strong> (nicht ihrem) positioniert übergeordnetes Element).</li> <li> <strong>behoben</strong>: Elemente werden aus dem Dokumentfluss entfernt und relativ zum Ansichtsfenster positioniert, wobei mit der Seite gescrollt wird.</li> </ul> <p><strong>Das Problem mit überlappenden Elementen</strong></p> <p>In unserem Beispiel sind die <strong>.row</strong> und <strong>.col</strong> Elemente werden absolut positioniert. Das heißt, sie werden aus dem normalen Dokumentenfluss herausgenommen und übereinander gestapelt. Um dieses Problem zu lösen, müssen wir einen Weg finden, sie im Dokumentenfluss zu halten und gleichzeitig die absolute Positionierung für bestimmte Layoutzwecke beizubehalten.</p> <p><strong>Die Lösung: Doppelte Verschachtelung</strong></p> <p>Eine unorthodoxe, aber effektive Lösung besteht darin, ein zweites Containerelement zu erstellen, das die Zeilen absolut positioniert:</p> <pre class="brush:php;toolbar:false"> <div class="container"> <div class="inner-container"> <div> <pre class="brush:php;toolbar:false">.container { position: relative; min-height: 2em; width: 100%; } .inner-container { position: absolute; } .row { position: relative; } .col1, .col2 { position: absolute; }
Mit dieser doppelten Verschachtelung wird das .inner-container fungiert nun als der nächstgelegene positionierte Vorfahre für die .row-Elemente. Dadurch werden die Reihen vertikal gestapelt, wobei das ursprüngliche Layout erhalten bleibt und gleichzeitig das Überlappungsproblem gelöst wird.
Hinweis: Diese Lösung behält die absolute Positionierung für andere Layoutzwecke bei und erreicht gleichzeitig die gewünschte vertikale Stapelung Elemente. Es wird jedoch nicht für den allgemeinen Gebrauch empfohlen und sollte als letzter Ausweg verwendet werden, wenn das Entfernen der absoluten/relativen Positionierung keine Option ist.
Das obige ist der detaillierte Inhalt vonWie stapele ich absolut positionierte Elemente vertikal, ohne die absolute/relative Positionierung zu entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Das React -Ökosystem bietet uns viele Bibliotheken, die alle auf die Interaktion von Drag & Drop konzentrieren. Wir haben React-Dnd, React-beautiful-dnd,

In letzter Zeit gab es einige wunderbar miteinander verbundene Dinge über schnelle Software.

Ich kann nicht sagen, dass ich das all das oft im Hintergrund-Clip verwende. I ' D Wette It ' wird in der täglichen CSS-Arbeit kaum jemals verwendet. Aber ich wurde in einem Posten von Stefan Judis daran erinnert,

Die Animation mit RequestAnimationFrame sollte einfach sein, aber wenn Sie die Dokumentation von React nicht gründlich gelesen haben, werden Sie wahrscheinlich auf ein paar Dinge stoßen

Vielleicht ist der einfachste Weg, dies dem Benutzer anzubieten, ein Link, der auf eine ID auf das Element abzielt. Also wie ...

Hören Sie, ich bin kein GraphQL -Experte, aber ich arbeite gerne damit. Die Art und Weise, wie es mir Daten als Front-End-Entwickler vorstellt, ist ziemlich cool. Es ist wie ein Menü von

In der Roundup in dieser Woche, einem praktischen Lesezeichen für die Inspektion von Typografie, unter Verwendung dessen, wie sich JavaScript -Module gegenseitig importieren, sowie Facebook ' s.

I ' Ich habe kürzlich eine interessante Änderung auf Codepen bemerkt: Als es ein Rechteck mit abgerundeten Ecken auf der Homepage schwebt, expandieren Sie sich im Rücken.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Dreamweaver CS6
Visuelle Webentwicklungstools

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.