Почему это, как принимают, использует УЛ., структуру LI в списках меню?

Я плохо знаком с HTML. Когда я начал читать документацию о списках, я заметил это везде <ul>, <li> структура используется, даже для создания очень простых списков.

Но для меня это является самым удобным для использования только <a> элементы с CSS:

display: block;
/* and/or */
float: left;

Так, почему использование <ul>, <li> вместо просто <a>?

Большое спасибо.

23
задан meder omuraliev 26 July 2010 в 15:06
поделиться

3 ответа

Потому что структурно они являются наиболее подходящими элементами для этой цели. Также помогает пользователям программ чтения с экрана правильно определять элементы страницы.

Помните, что HTML предназначен для разметки / содержимого (что это за текст? Абзац? Заключите его в тег p), CSS - для стилизации, JS - для поведения.

У вас могут быть тысячи привязок на вашей веб-странице, но что, если вы хотите стилизовать привязки, вложенные в перечисленные элементы, иначе, чем другие привязки?

<ul>
<li><a href="#">blah</a></li>
</ul>

<a href="#">sfl</a>

Если бы вы все сделали правильно, ваш css было бы тривиально реализовать

a { }
ul li a { }

В противном случае вам пришлось бы разбрасывать классы вокруг якорей, и это было бы беспорядочно и неструктурированно.

Что касается SEO - я считаю, что в прошлом семантически размеченный код не имел большого значения, но в настоящее время со спецификациями, такими как RDF, элементы HTML 5, Интернет становится все более и более семантическим, так что только выгодно быть настолько семантическим, насколько это возможно.

В 2010 году Google определил три формы структурированных метаданных, которые их системы будут использовать для поиска структурированных семантический контент на веб-страницах. Такой информация, связанная с отзывами, профили людей, списки компаний, и события будут использоваться Google для улучшить "фрагмент" или короткий фрагмент цитируемого текста, который отображается, когда страница появляется в списках поиска. Google указывает, что эти данные могут быть данные с использованием микроданных, микроформатов или RDFa. [13] Микроданные указаны внутри itemtype и itemprop атрибуты добавлены в существующий HTML элементы; ключевые слова микроформата добавлены атрибуты внутри класса как обсуждалось выше; и RDFa полагается на атрибуты rel, typeof и property добавлены к существующим элементам. [14]

28
ответ дан 29 November 2019 в 01:51
поделиться

Потому что ваша разметка должна быть семантической, а не просто отображаемой.

Кто угодно или что угодно, кто читает ваш документ, может сразу сказать, что раздел, размеченный тегами

  • ...
, является списком.

CSS не описывает , что что-то такое, а описывает только то, как это должно быть отображено. В идеале вы должны разметить свой документ, чтобы описать , что каждая часть, а затем использовать CSS для соответствующей визуализации этих частей.

13
ответ дан 29 November 2019 в 01:51
поделиться

Потому что UL, LI и OL - это элементы HTML, созданные с определенной целью - быть списками. Используя правильную разметку, вы добавляете дополнительную информацию к своему контенту, любой автоматизированный инструмент, который видит ваш код, будет знать, что это списки, и сможет действовать соответствующим образом.

Если вам нужны ссылки внутри элемента списка, вы можете поместить элемент A, вложенный в LI:

<ul>
    <li><a href="example.com">Example</a></li>
</ul>
3
ответ дан 29 November 2019 в 01:51
поделиться