Dieser Artikel zum Formatieren von Kontexten könnte für Sie interessant sein: tjkdesign.com/articles/…
– jensgram
11. Oktober 10 um 14:03 Uhr
Sie scheinen einige der Regeln zu vermissen, die Sie dort verwenden. Sind alle Elemente in .alignright auch schwebend?
– Joel Glovier
11. Oktober 10 um 18:37 Uhr
MatTheCat
Ich denke, es ist eine zusammengebrochene Marge. Es wird nur der größte Abstand zwischen dem unteren Rand des ersten Elements und dem oberen Rand des zweiten berücksichtigt.
Es ist ganz normal, dass zwischen zwei Absätzen nicht zu viel Platz ist, z.
Das lässt sich bei zwei benachbarten Elementen nicht vermeiden, also muss der größere Rand vergrößert oder verkleinert werden.
beide gehören zu In-Flow-Boxen auf Blockebene, die am selben Blockformatierungskontext teilnehmen
keine Linienkästen, kein Freiraum, keine Polsterung und kein Rand trennen sie
beide gehören zu vertikal benachbarten Kastenkanten
Es gibt also kein Zusammenbrechen mit float was das Element aus der Strömung nimmt.
Senken Sie einfach Ihre Marge auf das, was Sie wollen.
– Kissaki
11. Oktober 10 um 13:50 Uhr
Bearbeitet, vergrößern oder verkleinern Sie einfach den größeren Rand oder verwenden Sie Polsterung
– MatTheCat
11. Oktober 10 um 13:57 Uhr
Ich habe gerade herausgefunden, dass beim Floaten der Elemente Ränder für beide angewendet werden.
– Atif
10. Januar 11 um 7:31 Uhr
Ich wäre vorsichtig mit der Verwendung float als Hack, da es einige unangenehme Nebenwirkungen haben kann. Ich bin vorsichtig mit der Verwendung float als Regel.
– Andreas
24. Februar 14 um 22:28 Uhr
Wenn Sie einer Stunde eine Höhe geben, wird es zu einer In-Flow-Block-Level-Box? Versuch es
– Manuel Hernández
12. Januar 19 um 0:10 Uhr
Kissaki
Ränder sind im Gegensatz zum Auffüllen (das eine bestimmte Breite auffüllt) ein „Tun Sie dies als Mindestabstand“.
Es wird diese Distanz nicht zu allen Elementen bringen.
Wie Sie sehen, ist die in Kontakt kommen Der untere Rand des Blocks wird zum Eingabefeld hin begrenzt. Das ist die hier aktive Marge. Der andere Rand, der obere Rand von der Eingabe, ist nicht wirksam, da er kleiner ist und kein Blockelement erreicht, wo er eigentlich wäre zurückschieben das Element. Die beiden Ränder überlappen sich und beeinflussen sich nicht gegenseitig.
TOPKAT
Wenn Sie keine Polsterung verwenden können und wirklich einen Rand benötigen, der sich nicht überlappt, ist hier ein Trick:
.btn {
/* hack for a 2px margin */
border-top: 2px #fff solid;
/* this is important if you have a background-color
and don't want to see it underneath the transparent border*/
background-clip: padding-box;
}
<div>Margin applied is 10px on each sides</div>
<div>the first two have only 10px between them</div>
<div class="fake-margin">the last two have 10 + 10px</div>
<div class="fake-margin">= 20 px</div>
Richard Max
Fügen Sie zwischen den beiden Objekten ein klares div-Tag hinzu
Achten Sie auf display: flex auf dem übergeordneten Element.
.flex {
display: flex;
flex-direction: column;
}
.block {
display: block;
}
/* css for example only */
div {
padding: 1em;
background: #eee;
}
p {
font-size: 20px;
margin: 1em 0;
background: pink;
padding: 5px;
}
p:first-child {
margin-top: 0;
}
<h1>display: flex</h1>
<div class="flex">
<p>Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Curabitur blandit tempus porttitor.</p>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p>Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Curabitur blandit tempus porttitor.</p>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
</div>
<h1>display: block</h1>
<div class="block">
<p>Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Curabitur blandit tempus porttitor.</p>
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p>Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Curabitur blandit tempus porttitor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
<p>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
</div>
.
7576300cookie-checkWarum überlappen sich meine Div-Ränder und wie kann ich das beheben?yes
Dieser Artikel zum Formatieren von Kontexten könnte für Sie interessant sein: tjkdesign.com/articles/…
– jensgram
11. Oktober 10 um 14:03 Uhr
Sie scheinen einige der Regeln zu vermissen, die Sie dort verwenden. Sind alle Elemente in .alignright auch schwebend?
– Joel Glovier
11. Oktober 10 um 18:37 Uhr