The problem with that clearfix is that it adds another element to the HTML.  Since a clearfix is a design-specific issue, I prefer to keep it in CSS with a pseudo-element.