`#bottom` isn’t showing up because it’s full of floated elements so it collapses on itself. Applying clearfix to bottom fixes your problem, but since you have `head.gif` it’s some sort of checkered background.
Well yes that’s true, overflow:hidden will cut absolutely positioned elements, or select boxes if they hang out of the #footer div. But it there will not be any of these, then I don’t see any problem using overflow:hidden as a clearfix solution.
As I mentioned, it’s not supported in older browsers, so if he’s looking to design with IE7 or lower in mind, it’s not the best solution..with THAT being said, your inline-block solution is no better, as inline-block was first supported in IE8 as well, in addition, the pseudo-element `:after` wasn’t supported until IE8 either