I have the following html divs :
...
<body>
<div id="barChart_div" style="width: 600px; height: 250px;float:left; "></div>
<div id="stats_div" style="width: 350px; height: 250px; float:left;"></div>
<div id="lineChart_div" style="width: 600px; height: 250px; "></div>
<div id="cdfChart_div" style="width: 600px; height: 250px;"></div>
</body>
...
what I am trying to do is to display the first div ( contains a bar chart) and the second div(contains some text fro the chart) next to each other, then below them display the other two divs (contain other charts) one after the other vertically i.e. I want it to look like:

and what i get currently is :

cdfChart_div (div4) is getting displayed on top of lineChart_div(div3).
What CSS style do i need to use to fix this?
On the
divthat comes immediately after the floatedstats_div:style="clear:left;"Full code:
Since
stats_divis floated, its contents are taken out of the normal flow. Thus, the contents of the nextdivthat is part of the normal flow does not make space for the contents ofstats_div. You have have toclearone side of the nextdivif you want its contents to come after the contents of the previous floateddiv. Often you’ll seeclear: both, which works on either edge of the normal flowdiv.