Варианты использования clearfix?
Нужному классу просто добавляют те же css параметры что и у clearfix..clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

.header:before,
.header:after {
  content: " ";
  display: table;
}
.header:after {
  clear: both;
}
Никто такое не запрещает, в большинстве фреймворках практикуется. При использование препроцессоров можно использовать extend как вам посоветовали выше.
Ну так пройдитесь по сайтам и проверяйте, кто вам мешает?
Можете так и этак, как вам удобнее.el:after{} /*  */