Что все-таки лучше table или div?
Никто из них не лучше и не хуже. Всё, как обычно: у каждого из них своё назначение.
Таблицы
С помощью тега
<table> верстают табличные данные.
При этом никто не мешает менять им display и перестраивать как душе угодно.
Бывают задачи, которые на самом деле не решить с помощью table, но редко.
div
Элемент, не имеющий семантической нагрузки.
Его рекомендуют использовать, когда нет других, подходящих по смыслу тегов.
(Это написано прямо в спецификации
https://html.spec.whatwg.org/multipage/grouping-co...)
Поэтому,
при верстке используют подходящие по смыслу элементы (семантика).
Т.е. если нужно сверстать список, то его верстают с помощью
ul или
ol, секции размечают тегами
<section>,а не
<div>. И т.д.