Ответ
Верстать на div — не всегда плохо, но и не всегда хорошо.
Плюсы:
divуниверсален, легко стилизуется и управляется через CSS/JS.- Подходит для сложных структур, где семантика не важна (например, контейнеры, обёртки).
Минусы:
- Нарушает семантику HTML. Теги вроде
header,nav,section,articleпомогают поисковикам и скринридерам понимать структуру страницы. - Ухудшает доступность (a11y), если не заменяет семантические теги.
Когда использовать div:
<div class="modal-overlay">...</div> <!-- Нет семантического аналога -->
Когда избегать:
<!-- Плохо -->
<div class="header">...</div>
<!-- Лучше -->
<header>...</header>
Вывод: div — инструмент, но не замена семантике.