You must clear the floats so that the parent can surround them.
<div style='clear:both;border-bottom:3px solid #999;border-top:#333 solid thin;background:#D7E7E8;position:relative;'> <div style='width:1091px;margin:0 auto;margin-top:70px;'> <div style='float:left;width:200px;border:thin solid black;margin-bottom:50px;position:relative;'> float LEFT </div> <div style='float:right;border:thin solid black; width:800px;border:thin solid black;margin-bottom:50px;position:relative;'> float RIGHT </div> <div style="clear: left;"></div> </div> </div>
You can also make the parent float itself, and then you donβt need additional markup (cleaning the div). If you do this, then your parent will need the specified width.
EXPLANATION:
When an element is floating, the parent does not know about its height (unless it is the floating element itself). You need a clear one under the floats so that the parent div recognizes the entire height of all its children.
source share