Тэги как кирпичи всякого документа основанного на XML должны выбираться с большим прагматизмом, что-бы потом не удалять ненужные (т.н. deprecated) и не тормозить внесение новых (sound, video). В свете того что я сам этой темой пристально занимаюсь решая что нужно оставить в WYSIWYG-редакторе и что добавить, а так-же меня интересует типографика и семантика, то читая Никиту решил тоже поштудировать эту тему.
- a — мало кто помнит почему самый популярный тэг ссылки использует такое название да ещё и параметр href. Ещё меньше пишущих статьи используют этот тэг по прямому назначению, а именно в качестве якоря к участку документа, определённому параметром name. С переходом на динамическое содержание при помощи ajax, якорь получил новую жизнь, поскольку в URL после # можно прописать адресс открытого письма (см. gmail), но мало кто это замечает.
- address — единого мнения нет, то-ли это физический почтовый адресс, то-ли это часть описания документа с email-ом.
- abbr — отличный тэг для сокращений. Используя параметр title как в картинках, при наведении курсором появится полное название
- ins и del — очень часто статьи в блогах и ЖЖ меняются, при этом люди пишут что-то типа «upd. вопрос разрешился», тогда как логичней использовать для этого соответсвующие тэги. Само собой когда статья имеет историю изменений типа wiki, то система должна быть посложней.
- sub и sup — эти тэги находят как правило те кто хочет оформить простейшую математику или химию. Впрочем степени, атомарные и изотопные индексы не единственная функция. Если вы когда-либо писали дипломную работу то наверняка столкнулись с научным оформлением ссылок на источники, а сноски с использованием sup вкупе с anchor активно используются взамен неподдерживаемого тэга fn.
- tfoot, thead, th, caption — всё это тэги, расширяющие обычную таблицу. Очень часто разработчики усложняют себе жизнь добавляя лишние классы, div-элементы и тп.
- label — используется в формах как текстовое описание поля и если связан через параметр for с элементом, то при нажатии активирует элемент. Очень полезен с галочками и автоподсказками. В последнее время становится популярным.
- fieldset и legend — элемент группирования элементов форм и соответсвенно заголовок к этой группе. Из-за ограниченний браузеров и разного отображения разработчики отказываются в сторону искуственных и универсальны div-элементов. Но упомянуть я немогу.
- code, var — нужные разве что программистам. Вместо них как правило используют pre и em, что помоему не очень семантично.
- base — помоему самый ценный тэг для CMS, поскольку один раз установив для документа абсолютный путь, все остальные объекты (изображения, ссылки) можно указывать относительно. Это уменьшает как работу с темплейтами у программиста, так и уменьшает код.
Будьте бдительны, неосторожная игра с элементами которые вам могут показаться "семантически подходящими" на самом деле могут быть либо мало поддерживаемыми браузерами, либо deprecated со стороны W3C в соответсвующем XHTML/HTML5 стандарте. Например menu, listing, comment, sidebar
Комментарии
2. Я элемент address использую для блока контактов.
3. Есть ещё acronym
4. Только не забывать в атрибут date добавлять дату изменения. Можно ещё в title.
5. кстати, терпеть не могу как они увеличивают расстояния до близлежащих строк, поэтому форматирую их как в моём ресете.
6. Офигел, когда узнал, что tfoot должен писаться ДО tbody! По-моему, совершенно не логично.
7. А разве раньше не был популярен? По-моему, это неотъемлимая часть любой формы.
8. Но упомянуть ты не можешь?
9. Есть ещё samp и kbd.
10. В CMS обычно прописывается абсолютный путь прямо в ссылку. Разве это как-то влияет?
8. Да, помоему надо как-то развивать возможности форм визуально
9. Читал про них и сначала хотел kbd упомянуть, но в реальной жизни они ещё реже чем code и var нужны.
10. Абсолютный путь до скриптов, css, картинок надо задавать каждый раз вставляя переменную (которая вечно забывается, и занимает место), а с относительным один раз поставил и можно не беспокоится.
http://w3schools.com/tags/tag_thead.asp
9. Не скажи. Очень часто мы упоминаем «введите то-то...» и никак это не форматируем, а за введённый с клавиатуры текст отвечает kbd. Элемент samp используется для выходных данных, которые тоже часто встречаются, но не употребляются.
10. За формирование ссылки в нормальных цмс отвечает одна функция. О чём можно беспокоиться когда всё автоматизированно?