いろいろ試した結果、2カラムの場合はこの構成が一番いいです。
#headerと#navigatorは独立させる。実際には、こんな感じになります。
#containerの中に#alpha、#beta、#footerを入れ子(ネスト)する。
<div id="header">この構成にすると#alphaと#betaのコンテンツの長さを気にしなくてもどちらか長い方が#footerを押し下げてくれるのでデザイン構成上の問題が起きません。また、curvycornersなどのJavaScriptを使っても問題が起きづらくなります。
ここにheader
</div>
<div id="navigator">
ここにナビゲーター
</div>
<div id="container">
<div id="alpha">
ここにalpha
</div>
<div id="beta">
ここにbeta
</div>
<div id="footer">
ここにfooter
</div>
</div>
CSSは以下のような感じ。
#header { width: 800px; }ここでは高さなどのプロパティーを入れていませんが便宜自身で入れてください。基本的には#alphaと#betaをfloatで左右に振り分けます。この際幅に注意してください。#containerの幅と#alpha+#betaの幅が同じでなくてはいけません。またpaddingやborderを指定すると幅が変わってくるのでその都度調整してください。この幅を間違えるとどちらかが下段に行ってしまいます。
#navigator { width: 800px; }
#container {
width: 800px;
}
#alpha {
width: 600px;
float: left;
}
#beta {
width: 200px;
float: left;
}
#footer {
clear: both;
}



