:before и :after - это псевдоэлементы, поддержка которых уже стала очень хорошей и их стали использовать массово. Трюк с очисткой флоатов - это лишь вершина айсберга.
Еще применяют псевдоэлементы для декоративных целей. Когда, например, нужно добавить к кнопке иконку из спрайтов. Раньше для этого добавляли в html дополнительный элемент и вешали на него нужные стили, сейчас для этих же целей можно использовать псевдоэлемент.
Короче, они избавляют от использования избыточных тэгов.