Что за CSS хаки вида: ":before {content: ""}..."?
такой clearfix служит не для запрета обтекания, а для фикса размеров элемента, который содержит float потомков.
благодаря этому хаку элемент растянется на максимально возможную высоту(например высоту самого высокого элемента-потомка), и ширину(если элемент inline-block или float).
clearfix.. Трюк для очистки флоатов. Чтобы следующие элементы не обтекали данный.