2013-03-28 15 views
6

DEMOclearfix Technik fügt einige zusätzliche Polsterung

Mit clearfix technique super nützlich ist, aber jemand angezeigt hat, das Problem der Verwendung dieser Methode Pfund extra Wert erhöht wird, wie in Demo gezeigt.

Die Höhe der beiden gleich sind.

CSS:

body{margin: 0; padding: 0;} 
#wrap{width: 900px; height: 250px; background: red; margin: 0 auto;} 
.clearfix:before, .clearfix:after{content: "."; display: table;} 
.clearfix:after{clear: both;} 
.clearfix{zoom: 1;} 
#box{float: left; width: 200px; height: 250px; background: blue;} 

HTML:

<div id="wrap" class="clearfix"> 
<div id="box"><h1>some heading text here</h1></div> 
</div> 
+0

Bitte Fügen Sie Code klarer fix – MarmiK

+0

[: vor Pseudoelement verhindert oberen Rand Zusammenbruch] (http://nicolasgallagher.com/micro-clearfix-hack/) – FelipeAls

Antwort

3

Nur Jakub sagte. .clearfix:before, .clearfix:after{content: "."; display: table;} fügt einen Punkt vor und nach Ihrem Element hinzu. Vielmehr verwenden Sie diesen Code:

.clearfix:before, .clearfix:after{content: " "; display: table;} 

Oder eine andere Methode nur diesen Code zu verwenden:

.clearfix:after { 
    visibility: hidden; 
    display: block; 
    font-size: 0; 
    content: " "; 
    clear: both; 
    height: 0; 
} 
+1

Keine Notwendigkeit, auch für den Raum (es löst ein [Opera + contenteditable Fehler] (http://nicolasgallagher.com/micro-clearfix-hack/)). Leere Zeichenfolge ist in Ordnung. – FelipeAls

1

Sie Problem ist einfach:

.clearfix:before 

Wenn Sie hinzufügen, dass es eine . vor kleben wie Sie gerade setzen in Ihrem CSS ein . Entfernen es und es funktioniert gut mit clearfix:after

Verwandte Themen