div Außenrandüberlappungsproblem und Lösung
In diesem Artikel erfahren Sie, wie Sie die damit verbundenen Probleme überlappender Div-Ränder lösen können. Die Überlappung der Ränder erfolgt nur zwischen den oberen und unteren Rändern normaler Flussdokumente , während Inline-Elemente und Inline-Blockelemente keine überlappenden Ränder haben. Ich hoffe, dass es für alle hilfreich ist. 🔜 -bottom verschmilzt (kollabiert) manchmal zu einem einzelnen Rand, dessen Größe dem Maximum des einzelnen Rands entspricht (oder nur einem von beiden, wenn sie gleich sind), ein Verhalten, das als Randkollaps bezeichnet wird. Randüberlappung bedeutet, dass sich die angrenzenden Ränder (ohne nicht leeren Inhalt, Auffüllung oder Ränder dazwischen) von zwei oder mehr Boxen (die benachbart oder verschachtelt sein können) überlappen, um einen einzigen Rand zu bilden.
Mit anderen Worten, Randüberlappung bezieht sich auf zwei vertikal benachbarte Elemente auf Blockebene. Wenn sich der obere und untere Rand treffen, überlappen sich die äußeren Ränder und die überlappenden Ränder sind gleich dem größeren von ihnen.
Margin-Werte sind beide positiv, nehmen Sie den Maximalwert der beiden.
Wenn eine negative Grenze erscheint, subtrahieren Sie die negative Grenze mit dem größten Absolutwert von der größten positiven Grenze.
Wenn keine positive Grenze vorhanden ist, wird die negative Grenze mit dem größten Absolutwert von Null subtrahiert.1. Bei welchen Elementen treten Randüberlappungsprobleme auf?
überlappende Ränder- von
- normalen Flussdokumenten
. Nur
Blockelemente haben überlappende Ränder - und
Inline-Blockelemente
haben keine Randüberlappungsprobleme Zweitens, unter welchen Umständen kommt es zu Randüberlappungen?
Die erste Situation:
Marin benachbarter Geschwisterelemente – Die Werte von Überlappung unten und Rand obenWenn sich der Rand überlappt, wird nur der maximale Randbereich ausgewählt und übrig, sodass der Rand zwischen den beiden 100 Pixel beträgt Wenn Sie dieses Problem der Randüberlappung lösen müssen, müssen Sie es tun Später Float zu einem Element hinzufügen oder ein Div auf einen seiner Brüder setzen, Rand festlegen: 1px einfarbig weiß; Der Effekt des Beispiels ist wie folgt: Wenn der obere Rand sowohl des übergeordneten Elements als auch des untergeordneten Elements auf 50 Pixel eingestellt ist, sind das übergeordnete Element und das untergeordnete Element beide 50 Pixel vom Rand entfernt, anstatt 50px Abstand zwischen dem untergeordneten Element und dem übergeordneten Element, wie wir denken.
Wenn das übergeordnete Element keinen oberen Rand festlegt und das untergeordnete Element den oberen Rand auf 50 Pixel festlegt, sind die übergeordneten und untergeordneten Elemente zu diesem Zeitpunkt immer noch 50 Pixel vom oberen Rand entfernt. Lösung:Methode 1: Hinzufügen Überlauf: für das übergeordnete Element ausgeblendet;
Diese Methode löst unser Randüberlappungsproblem, aber diese Methode gilt nur für "Die Höhe des untergeordneten Elements plus die Randhöhe ist kleiner als die Höhe des übergeordneten Elements (childHeight +margin -top
Methode 3: Anzeige festlegen: inline -block;Da nur Blockelemente überlappende Ränder haben, machen wir daraus kein Blockelement und setzen es auf ein Inline-Blockelement
Methode 4: Float auf das übergeordnete oder untergeordnete Element setzen
<div id="box1"></div>
<div id="box2"></div>
#box1{
width: 200px;
height: 200px;
background: lemonchiffon;
margin-bottom: 50px;
margin-top: 50px;
}
#box2{
width: 200px;
height: 200px;
background: lightcoral;
margin-top:100px ;
opacity: 0.3;
float: left; //加上float后,两者间距为150px
}</span></p>
<p id="u141a6ac1"> zum übergeordneten Element hinzufügen Der dritte Fall: Das leere Element auf Blockebene <strong></strong></p>
<p id="u6177c6bc"> eigener Rand- oben und Rand-unten treten überlappend auf. Wir können dieses Problem lösen, indem wir einen Rand, einen Abstand oder eine Höhe dafür festlegen. <em><pre class="brush:php;toolbar:false"><div id="box1">
<div id="box3"></div>
</div>
#box1{
width: 200px;
height: 200px;
background: lemonchiffon;
margin-top: 50px;
}
#box3 {
width: 100px;
height: 100px;
background-color: #f12416;
margin-top: 50px;
}
Das übergeordnete Element legt border-bottom und padding-bottom fest, um sie zu trennen, oder es kann sein
Legen Sie eine Höhe für das übergeordnete Element fest. Maximale und minimale Höhe können dieses Problem ebenfalls lösen.
3 So berechnen Sie die Randüberlappung: Wenn alle Werte positiv sind, nehmen Sie den größten Wenn es sich nicht alle um positive Werte handelt, nehmen Sie den Absolutwert und subtrahieren Sie dann den Maximalwert vom positiven Wert.
Wenn es keinen positiven Wert gibt, nehmen Sie den Absolutwert und subtrahieren Sie dann den Maximalwert von 0.
-
(Teilen von Lernvideos:
CSS-Video-Tutorial , - HTML-Video-Tutorial
)
Das obige ist der detaillierte Inhalt vondiv Außenrandüberlappungsproblem und Lösung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

HTML definiert die Webstruktur, CSS ist für Stil und Layout verantwortlich, und JavaScript ergibt eine dynamische Interaktion. Die drei erfüllen ihre Aufgaben in der Webentwicklung und erstellen gemeinsam eine farbenfrohe Website.

WebdevelopmentRelieSonHtml, CSS und JavaScript: 1) HtmlStructuresContent, 2) CSSstylesit und 3) JavaScriptaddssinteraktivität, Bildung von TheBasisofModerernwebexperiences.

Es gibt zwei Möglichkeiten, eine Bootstrap -Split -Zeile zu erstellen: Verwenden des Tags, das eine horizontale Split -Linie erstellt. Verwenden Sie die CSS -Border -Eigenschaft, um benutzerdefinierte Style Split -Linien zu erstellen.

Um das Bootstrap -Framework einzurichten, müssen Sie die folgenden Schritte befolgen: 1. Verweisen Sie die Bootstrap -Datei über CDN; 2. Laden Sie die Datei auf Ihrem eigenen Server herunter und hosten Sie sie. 3.. Fügen Sie die Bootstrap -Datei in HTML hinzu; 4. Kompilieren Sie Sass/weniger bei Bedarf; 5. Importieren Sie eine benutzerdefinierte Datei (optional). Sobald die Einrichtung abgeschlossen ist, können Sie die Grid -Systeme, -Komponenten und -stile von Bootstrap verwenden, um reaktionsschnelle Websites und Anwendungen zu erstellen.

Es gibt verschiedene Möglichkeiten, Bilder in Bootstrap einzufügen: Bilder direkt mit dem HTML -IMG -Tag einfügen. Mit der Bootstrap -Bildkomponente können Sie reaktionsschnelle Bilder und weitere Stile bereitstellen. Legen Sie die Bildgröße fest und verwenden Sie die IMG-Fluid-Klasse, um das Bild anpassungsfähig zu machen. Stellen Sie den Rand mit der img-beliebten Klasse ein. Stellen Sie die abgerundeten Ecken ein und verwenden Sie die IMG-Rund-Klasse. Setzen Sie den Schatten, verwenden Sie die Schattenklasse. Größen Sie die Größe und positionieren Sie das Bild im CSS -Stil. Verwenden Sie mit dem Hintergrundbild die CSS-Eigenschaft im Hintergrund.

Wie benutze ich die Bootstrap -Taste? Führen Sie Bootstrap -CSS ein, um Schaltflächenelemente zu erstellen, und fügen Sie die Schaltfläche "Bootstrap" hinzu, um Schaltflächentext hinzuzufügen

Um die Größe der Elemente in Bootstrap anzupassen, können Sie die Dimensionsklasse verwenden, einschließlich: Einstellbreite:.
