Clearfix-Hack in CSS
Floating ist eine tolle Technik in CSS zum Positionieren von Inhalten und wenn eine Webseite responsiv sein soll kommt man wohl kaum ohne aus. Dabei entstehen allerdings öfter mal kleine Problemchen in der Darstellung wenn man Inhalte floatet.
clear:both;
nötig.
<div>
<button></button>
<span style="clear: both;" />
</div>
Dieses Vorgehen nennt man den Clearfix-Hack.
Es gibt Alternativen den Hack zu nutzen.
Bootstrap
Bootstrap enthält bereits eine Umsetzung des Hacks. Dabei bekommt das umrahmende Element die Klasse clearfix.
<div class="clearfix">
<button></button>
</div>
JQuery
Wer Bootstrap nicht nutzt kann mit Javascript Ähnliches bewirken. Ich nutze dabei JQuery um alle Elemente mit der Klasse clearfix-hack zu finden und eine span für den Fix anzuhängen.
<div>
<button class="clearfix-hack"></button>
</div>
<script>
$(document).ready(function () {
$(".clearfix-hack").after("<span style=\"clear: both;\" />");
});
</script>
Flow-Root
Eine neue, aber elegante Weise ist die Nutzung von display: flow-root
. Diese möglichkeit kann in Firefox und Chrome schon verwendet werden und stellt einen Standard dar um den Fix zu umgehen. In Zukunft könnte es also die erste Wahl sein.
<div style="display: flow-root">
<button></button>
</div>