I've used two different ways of making three columns. If B is the center column, and A and C are on each side:
- Float column A and column B next to each other inside a div. Then float this div and column C next to each other.
- Float column A and column C to the left and right and give each a width. Then give column B margins equal to the widths of A and C. Set a minimum width for the page.
Option 2 seems more elegant to me, as it only requires three divs, but I haven't seen many examples of it. Can you think of any examples of sites using this style? Which style do you use? Is there a reason to prefer one over the other?
Not sure if you've already seen these, but A List Apart has some great articles on column layouts . There are also a lot of other great articles on the site for different techniques for this.
My personal opinion is that option 2 is more elegant because, as you said, it uses one less div. Column A and Column B, in understanding at least, are not content related, so grouping them in a div seems counter to the separation of content and style. The second is a CSS solution without messing with the content of the page. CSS solutions without the need for extra, extraneous HTML is always, in my opinion, a better solution.