nastya97core
@nastya97core
Начинающий программист

Чем список лучше div блока?

Здравствуйте. Часто в вёрстке вижу, как в меню используют вот такую конструкцию. И не важно: горизонтальное меню или вертикальное.
<ul class="menu">
	<li>Главная</li>
	<li>Новости</li>
	<li>Блог</li>
</ul>


Чем оно лучше вот такой конструкции
<div class="menu">
	<div>Главная</div>
	<div>Новости</div>
	<div>Блог</div>
</div>

или такого, если у тебя всё-таки ссылки, а не кнопки:
<div class="menu">
	<a>Главная</a>
	<a>Новости</a>
	<a>Блок</a>
</div>


Смысл списков в меню, когда можно вот так?
  • Вопрос задан
  • 572 просмотра
Решения вопроса 5
wapster92
@wapster92 Куратор тега HTML
Люблю трилогию ME
Для доступности. Чтобы слепой понимал, что перед ним список из таково-то числа ссылок, а еще лучше запихивать список с навигационными ссылками в тег nav.
Ответ написан
sniggering_deus
@sniggering_deus
I will live forever in the flame of your eyes.
Вот так будет правильно:

<ul class="menu">
  <li><a href="#">Главная</a></li>
  <li><a href="#">Новости</a></li>
  <li><a href="#">Блог</a></li>
</ul>


Потому что меню - это всё же как бы меню. Потому что есть такое понятия как - стандарты, спецификация, семантика, доступность. И ещё много интересной информации, которая видимо недоступна.

Вот так совершенно неправильно:

<div class="menu">
  <div>Главная</div>
  <div>Новости</div>
  <div>Блог</div>
</div>


Наверное, потому что <div> не является ссылкой, хотя можно сделать из него ссылку, но это как-то неправильно? Не хорошо что-ли? Не валидно.

Такой вариант:

<div class="menu">
  <a>Главная</a>
  <a>Новости</a>
  <a>Блок</a>
</div>


Это практически можно было бы считать нормальным, но это уже дело выбора. И всё же первый вариант самый правильный, потому что меню это обычно список, и неважно горизонтальное оно или вертикальное. И ещё куча аргументов.
Ответ написан
roswell
@roswell
и швец, и жнец, и на дуде игрец
Просто нужно вспомнить о семантической вёрстке.
Ответ написан
Lord_Dantes
@Lord_Dantes
чат для джунов t.me/developersjunior
Потому-что для меню существует тэг. И как еще указали выше это способствует на чтение сайта для слепых.
Ответ написан
@Olegarh1a
div class="menu" и ul class="menu" (div и ul) это блочные элементы. Но они отличаются тег div принято использовать для разметки сайта, Тег ul для списков
так почему все же ul,
для начала нам нужно задать себе вопрос что такое навигация ? - Навигация это список
и часто его нужно сделать маркированым или добавить картинку перед ссылкой. вот как раз тег ul создан для списков (естественно логично использывать данный тег). Допустим вам надо использовать картинку перед ссылкой с тегами div > a будет очень затруднительно и вы потратите драгоценное время, а если использовать ul>li>a это можно сделать всего лишь 1 свойством list-style
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@survivor2005
Делается для читабельности кода и для поисковиков это плюс. Списки более значимые для поисковика нежели див.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы