Задать вопрос
xPomaHx
@xPomaHx
1vs9

Почему clearfix называют хаком, костылем?

Почему clearfix называют хаком? Вот скажите вы хоть раз использовали как нибуть по другому свойство clear:both; кроме как для для clearfix. Просто по моему оно как раз делает то для чего и было задумано.
  • Вопрос задан
  • 303 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
Stalker_RED
@Stalker_RED
Да, использовали clear:both. Это нормальное css свойство, ничего особенного в нем нет.
Но clearfix это же не только clear:both. Минимальный код clearfix еще и от браузера зависит.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
clearfix это кастыль, так как float элементы изначально не предполагалось использовать для построения лэйаута страницы. Но что поделать, flexbox-ы только появились.

Если вы когда-нибудь видели варианты обтекания картинок текстом в вордах всяких - то думаю вы сможете уловить суть этого css свойства.
Ответ написан
Комментировать
@chirskiy_mixail
Очень давно занимаюсь версткой, имею огромный опыт
Мне кажется, раньше не было ::after ::before, не поддерживалось подобное везде как сейчас, и потому писали пустые блоки вроде
<div class="clear"></div>
У Сергея Чикуенка даже был вот такой хак chikuyonok.ru/2009/06/float-columns
.clear {
clear:both;
font-size:0;
overflow:hidden; /* тройной презерватив для IE */
}

Со временем пустые дивы заменили на псевдоэлементы, поправьте если я не прав.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы