Best Practice für CSS Clear oder Overflow [geschlossen]

8

Besprechen Sie mit einem Mitarbeiter, was mit CSS Clear / Overflow am besten ist. Bitte schließen Sie einen von uns und erklären Sie, warum einer besser ist als der andere.

JOEL'S CODE (mit Überlauf):

%Vor%

CHRIS 'CODE (mit clear):

%Vor%

Beide machen dieses Bild:

Wer hat Recht? :)

    
Joel 19.12.2011, 16:12
quelle

6 Antworten

6
  

Wenn Sie in einer Situation sind, in der Sie immer wissen, was das nachfolgende Element sein wird, können Sie das Klartext anwenden: beide; Wert für dieses Element und gehen Sie über Ihr Geschäft. Das ist ideal, da es keine ausgefallenen Hacks und keine zusätzlichen Elemente benötigt, die es perfekt semantisch machen. Natürlich funktionieren die Dinge normalerweise nicht so und wir brauchen mehr Werkzeuge zum Entfernen von Floaten in unserer Toolbox.

Ссылка

    
Phil Klein 19.12.2011, 16:18
quelle
2

overflow: hidden wird am besten verwendet, wenn Sie einen Container haben, der kleiner als der Inhalt ist; während clear: beide werden am besten verwendet, wenn Sie möchten, dass sich ein schwebender Container NICHT neben dem nächsten Container positioniert.

Wenn Sie sich Ihr rotes Quadratbeispiel ansehen, möchten Sie lieber clear als überlaufen, aber nicht so wie hier. vielleicht etwas mehr wie:

%Vor%

Im Grunde bist du sowohl falsch als auch richtig. Joel verwendet den besseren HTML-Ansatz, aber Chris benutzt den richtigen CSS-Code, nur auf die falsche Art.

    
Jimmery 19.12.2011 16:27
quelle
1

Hier ist ein Kompromiss:

DEMO jsBin

CSS:

%Vor%

HTML:

%Vor%

Ich würde es so schreiben. CHRIS 'Code ist etwas, was ich nicht schreiben würde, sondern nur wegen der redundanten leeren DIVs.

    
Roko C. Buljan 19.12.2011 16:19
quelle
0

Da das CSS in beiden Fällen hinsichtlich Komplexität und Wartbarkeit ungefähr gleich ist, gewinnt die Lösung mit einfacherem (und damit kleineren) HTML und Gesamtnutzlast. Es ist kein großer Unterschied, und mit der Komprimierung wird der wiederholte Code wahrscheinlich verschwinden, aber einfacher und kleiner ist immer besser, wenn alles andere gleich ist.

    
cdeszaq 19.12.2011 16:24
quelle
0

Was ist mit dem Micro-Clearfix ? Kein zusätzliches Markup, kein overflow: hidden; Clipping, Cross-Browser-Unterstützung für IE 6 +.

    
JonMack 19.12.2011 16:25
quelle
0

Meine persönliche Vorliebe ist die overflow:hidden -Technik. Ich denke, das liegt daran, dass das Floaten etwas eine Stilentscheidung ist. Um eine Klasse von clear in das Markup einzufügen, scheint mir das Hinzufügen von Stilinformationen in die Datenebene. Es ist ähnlich (aber nicht annähernd so schlimm) wie das Hinzufügen von Inline-CSS. (Tatsächlich, wenn Sie darüber nachdenken, können Sie auch style="clear:both" zu dem div hinzufügen, dem Sie class="clear" hinzufügen möchten.)

Das ist natürlich meine persönliche Meinung. Ich behaupte nicht, dass einer besser ist als der andere. Aber ich habe sehr selten ein Problem mit overflow:hidden gefunden.

    
MrMisterMan 19.12.2011 16:26
quelle

Tags und Links