Это более семантически правильный подход. Меню можно рассматривать как неупорядоченный список (ul
), а каждый элемент - как элемент списка (li
).
Чрезмерное использование div
элементов также известно как «дивит» и его следует избегать, где это возможно. (Что, конечно, не означает, что div
элементы сами по себе плохие. Существуют законные варианты использования для div
s почти на каждой веб-странице.)
Функциональных различий в использовании более семантически правильных элементов нет, но это облегчает чтение кода и позволяет создавать определения CSS с меньшими издержками.
Сравните, например,
div.menu { ..... }
div.menu div.subitem { ..... }
div.menu div.level2 div.subitem { ..... }
до
ul { ..... }
ul li { ..... }
ul ul li { ..... }
Известные примеры того, где div
s можно заменить более подходящими элементами:
Как уже говорилось, меню: <ul><li>
Формы с метками: <fieldset><label>
Заголовки <h1><h2>
(только заголовки, но не полные области заголовков)