Какие преимущества имеют список определений (<dd><dt> и т. Д.) И когда мы должны его использовать? - PullRequest
2 голосов
/ 04 июля 2010

Какие преимущества имеют список определений (<dd><dt> и т. Д.) И когда мы должны его использовать?(Пример: используйте в Zend_Form, но я не понимаю, почему)

Существуют ли другие лучшие варианты?

(Я новичок, но мне кажется, что использование xml внутри html. Если я правВ последнее время XML широко не используется, потому что yaml, file.ini, json каждый из них в своей области более эффективен при разборе, чем формат xml.)

Спасибо

Ответы [ 3 ]

5 голосов
/ 04 июля 2010

эта статья может быть вам полезна.

http://www.benmeadowcroft.com/webdev/articles/definition-lists

2 голосов
/ 04 июля 2010

Все теги HTML выглядят как XML.Это потому, что и XML, и HTML тесно связаны с SGML.XML - это просто более обобщенный и «расширяемый» язык разметки, чем HTML.

И я вряд ли скажу, что XML «широко не используется», учитывая, что XHTML, RSS, ATOM, RDF, EPUB, XMPP, микроформатыODF, SOAP и т. Д. Основаны на XML.В общем, он гораздо более популярен, чем файлы YAML, JSON или ini - ни один из которых не является языком разметки документов в любом случае.

Так что тот факт, что HTML-теги напоминают XML, является действительно глупой причиной, чтобы избегать использованияопределенный тег или набор тегов.Разметка должна выбираться на основе семантической структуры вашего контента, а не популярности XML в совершенно не связанном приложении сериализации данных.

Вы используете DL, когда вам нужно представить список определений .То есть всякий раз, когда у вас есть что-то с семантической структурой:

term: definition
term: definition
term: definition
...

Строго говоря, списки определений должны использоваться только для определения терминов, как в глоссарии.Но на практике это используется для гораздо большего.Поскольку HTML не предоставляет тегов для указания других типов парных отношений, DL используется в качестве всеобъемлющего в этой области.

Помимо определения терминов, DL также используется для диалога:Элемент DT содержит имя говорящего, а DD - произносимую линию.

Форма также может быть представлена ​​в виде списка определений, но использование тега LABEL является более семантически правильным IMO.

Я обычно использую DL, когда мне нужно перечислить набор атрибутов и их значений, например:

File Name: Chloroform Girl.avi
File Size: 320 MiB
File Type: Video
2 голосов
/ 04 июля 2010

В HTML <dl/> необходимо использовать каждый раз, когда вам нужен список слов с определениями. На практике список определений используется в ситуациях, когда простого списка (неупорядоченный <ul/> или упорядоченный <ol/>) недостаточно.

Например, вы хотите отобразить список файлов для загрузки. Каждый файл имеет значок, имя, размер и кнопку загрузки.

  1. Во-первых, вы можете поместить все в <table/>. Это было сделано десять лет назад, когда CSS не использовался так интенсивно, как сегодня, и когда разделение между контентом и презентацией было не слишком ясным.

  2. Затем вы можете просто поместить все в <div/> с: каждый файл в <div/>, каждое имя файла в <div/> и т. Д. Проблема в том, что код будет длиннее, менее простым понять и труднее поддерживать.

  3. Затем вы можете поместить <ul/> с большим количеством <div/> s внутри. Это похоже на (2.)

  4. Наконец, вы можете использовать список определений. Преимуществами будут уменьшенный размер HTML-кода и более простой в обслуживании код. Кстати, доступность будет увеличена: при отключенном CSS ваша страница будет по-прежнему читабельной (тогда как при встроенных <div/> s пользователю будет очень трудно понять, что это список файлов).

...