<解決策2> containerボックスに overflow: hidden; を指定

A
B
CSSソース
#header { width: 100%; }
#container { width: 100%; overflow: hidden; }
#boxA { float: left; width: 35%; }
#boxB { float: right; width: 65%; }
#footer { clear: both; width: 100%; }
HTMLソース
<div id="header">header</div>
<div id="container">
 <div id="boxA">A</div>
 <div id="boxB">B</div>
</div>
<div id="footer">footer (clear: both;)</div>

水色の線はAボックス、緑の線はBボックス、 グレーはcontainerボックス(親ボックス)です。

※ AボックスとBボックスには、box-sizing を指定していますので、未対応のブラウザでは正しく表示されないかもしれません。