Die meisten Clearfix-Techniken beinhalten das Hinzufügen von Dingen ganz unten im übergeordneten Container, und ich bevorzuge den Pseudo-Element-Ansatz am meisten, da dies nicht der Fall ist Fügen Sie nicht benötigte Elemente in den HTML-Code ein.HTML/CSS: Floating-Elemente in der Mitte löschen, ohne unnötige Tags hinzuzufügen
Allerdings habe ich kürzlich festgestellt, dass ich es mit einem Container zu tun habe, in dem einige Kinder schweben, aber nicht alle. Sagen Sie den ersten beiden Kindern, dass die ersten Schwimmer übrig sind und der zweite Schwimmer nach rechts. Ich brauche einen Weg, um den Float direkt nach dem zweiten Element zu löschen, damit der Inhalt nicht dazwischen gequetscht wird. Gibt es eine Möglichkeit, Floating-Elemente in der Mitte zu löschen, ohne ein Clearfix-Element hinzuzufügen?
Unten ist ein Beispiel:
HTML
<div class="container">
<div class="child">
first child!
</div>
<div class="child">
second child!
</div>
<div class="child">
third child!
</div>
</div>
CSS
.container {
width: 200px;
}
.child:nth-child(1) {
float: left;
background: yellow;
}
.child:nth-child(2) {
float: right;
background: red;
}
.child:nth-child(3) {
background: blue;
color: white;
}
diese jsfiddle Bitte beachten Sie, um zu sehen, was ich jetzt habe.
Danke für die Beantwortung, alle sind großartige und offensichtliche Antworten, aber ich werde deins akzeptieren, da es mehr Informationen hat. Und Junge, oh Junge, ich war so dumm, keine so offensichtliche Lösung zu sehen ... Benutze einfach alles, was danach kommt, um den Float zu räumen! Nebenbei gesagt, gibt es, wenn ich mehrere Elemente abwechselnd links und rechts schwebe, sowieso, dass sie eine neue Zeile auf jedem verbleibenden Float beginnen sollen, anstatt sie alle auf derselben Linie zu stauen? Ohne Breite auf ihnen einzustellen. –
@Xavier_Ex Ich habe auch eine Antwort [hier] (http://Stackoverflow.com/a/12871734/1542290), die ein bisschen Floats zu deckt;) und Sie begrüßen ... –
@Xavier_Ex und für Ihre Frage, ändern das DOM, das ist eine gute Übung, um die schwebenden Elemente in einem Wrapper-Element zu wickeln, und verwenden Sie 'clear' Klasse, die ich bereits in meiner Antwort http: // jsfiddle vorgeschlagen habe.net/dJxD4/9/ –