4.3 Properly Clear and Contain Floats
Floating an element is necessary if you want to create a column layout or simply position elements on the same line.
However, by setting float to an element (either left or right) will always create problems for the parent element. This will collapse because it cannot calculate its height anymore. Once we float an element we basically take it out of the normal document flow.