На HTML5, хотя все современные браузеры уже поддерживают данный стандарт. По состоянию на декабрь 2011 года стандарт все еще находится в состоянии разработки.

В HTML5 добавляет много новых синтаксических особенностей – , , и . Эти элементы разработаны для того, чтобы сделать проще внедрение и управление графическими и мультимедийными объектами в вебе без необходимости обращаться к собственным плагинам и API. Другие новые элементы, такие как , , и разработаны для того, чтобы обогащать семантическое содержимое документа (страницы).

Новые теги HTML5
  • 1. Теги разделов (article, aside, footer, header, hgroup, nav, section)
  • 2. Теги группировки контента (figure, figcaption)
  • 3. Теги для семантического выделения текста (bdo, mark, time, ruby, rt, rp, wbr)
  • 4. Теги для вставки контента (audio, video, canvas, embed, source)
  • 5. Теги для элементов форм (datalist, keygen, output, progress, meter)
  • 6. Интерактивные элементы (details, summary, command, menu)
Тег Краткое описание
Определяет статью
Определяет контент в стороне от основного контента страницы
Определяет аудио контент
Определяет графику
Определяет командную кнопку
Определяет данные в упорядоченный список
Определяет выпадающий список
Определяет шаблон данных
Определяет детали элемента
Определяет диалог (разговор)
Определяет цель события, отправляемого по серверу
Определяет группу медиа-контента, и их подписи
Определяет нижний колонтитул для раздела или страницы
Определяет область заголовка раздела или страницы
Определяет выделенный текст
Определяет измерения в течение заранее определенного диапазона
Определяет навигационные ссылки
Определяет вложенную точку в шаблоне данных
Определяет некоторые виды результата
Определяет ход выполнения задачи любого рода
Определяет правила для обновления шаблонов
Определяет раздел (секцию)
Определяет медиа-ресурсы
Определяет дату/время
Определяет видео
Неподдерживаемые теги: Тег Краткое описание
Не поддерживается. Определяет акроним
Не поддерживается. Определяет апплет
Не поддерживается. Используетя вместо CSS для задания шрифта
Не поддерживается. Определяет большой текст
Не поддерживается. Определяет текст по центру
Не поддерживается. Определяет список директорий
Не поддерживается. Определяет фрейм
Не поддерживается. Определяет набор фреймов
Не поддерживается. Определяет поисковый индекс в документе
Не поддерживается. Определяет секцию, не поддерживающую фрейм
Не поддерживается.
Не поддерживается. Определяет зачеркнутый текст
Не поддерживается. Определяет телетайп текст
Не поддерживается. Определяет подчеркнутый текст
Не поддерживается. Определяет выровненный текст
Список атрибутов HTML5 Атрибут Значение Краткое описание
contenteditable true
false
Определяет, может ли пользователь редактировать содержимое (контент)
contextmenu menu_id Определяет контекстное меню элемента
draggable true
false
auto
Определяет, может ли пользователь перетащить элемент
irrelevant true
false
Определяет, что элемент не имеет значения. Элемент, имеющий значение не отображается
ref URL / id Определяет ссылку на другой документ / часть документа (используется только тогда, когда значение атрибута установлено)
registrationmark reg_mark Определяет зарегистрированный знак элемента
template URL / id Определяет ссылку на другой документ / часть документа, которые должны быть применены к элементу
Структура разметки страницы в HTML5

При использовании обычной структуры страницы сайта можно выделить несколько типичных блоков, описываемых тегом div с соответствущим классом (, , , , и пр.).

При использовании с применением HTML5 , эти блоки описываются структурными тегами , , , , и пр., что очень упрощает жизнь разработчикам. Данные теги являются структурными эквивалентами и они делают разметку более наглядной и простой в понимании. Также, по умолчанию, они являются инлайновыми, поэтому их надо cделать блочными с помощью display:block.

Данные теги важно применять правильно. Чтобы не запутаться когда и какой применять, в сети существует замечательный ресурс , а также можно воспользоваться следующим алгоритом:

Все современные браузеры (Опера, Сафари, Хром, Мозила, ИЕ9+) уже имеют поддержку HTML5 . Для браузеров IE8 и меньше следует подключать javascript , который "научит" их понимать новые теги. Код для его подключения ниже:

В верстке макетов при мы перешли на использование нового стандарта HTML5. Если вы хотите заказать сайт или отдельно , можете оставить заявку, написав по любому из адресов, указанных на странице или через форму обратной связи. Будем рады сотрудничеству!

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

Новые элементы в html5 — семантика

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

К тому же, сами современные веб-стандарты ориентированы на простоту и понятность кода. Новые элементы, в частности, включают в себя такие теги:

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

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

Footer – низ сайта, подвал, или как там его еще можно назвать. Обычно содержит информацию об авторских правах, иногда дополнительное меню и контактную информацию. В случае с этим тегом ситуация такая же, как и с header – он может быть и не одним на странице, этим тегом можно пометить, например, нижнюю секцию в сайдбаре, если она действительно отличается от других.

Nav – это контейнер для ссылок, которые имеют особую важность на веб-странице. Короче говоря, теперь в этот тег стоит заключать главное меню сайта, где содержаться ссылки на важные страницы и рубрики сайта.

Article – контейнер для содержания страницы, будь то статья, новость, новая тема на форуме и т.д.

Aside – все еще ведутся споры, для чего же должен использоваться этот тег. Сначала кто-то считал, что им принято формировать боковую колонку, где располагаются различные виджеты. Более павильным считается такое утверждение – этим тегом следует обрамлять всю информацию, которая является побочной на веб-странице. Например, цитата, блок с навигацией по документу или блок с контекстной рекламой.

Рис. 1. Семантические элементы и новая разметка с их помощью.

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

Вставка медиафайлов

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

Это делается для кроссбраузерности. Достаточно прописать путь к аудиофайлу в расширениях ogg и mp3. Также audio имеет определенные атрибуты. Например, атрибут controls добавляет к аудиозаписи элементы управления – так вы сможете менять громкость и останавливать воспроизведение.

Video – абсолютно идентичный прошлому элемент, за исключением того, что он выводит видео. В него также помещают теги source, где в атрибутах src прописываются пути к файлам.

Стоит сказать, что с видео ситуация чуть посложней. Чтобы оно воспроизводилось во всех браузерах, нужно добавить его сразу в трех форматах – это ogg, mp4 и webm.

В целом, тег имеет такие же атрибуты, как и audio. Дополнительно у него есть атрибут poster, с помощью которого вы можете задать путь к картинке, которая будет видна, если видео не проигрывается. Также с помощью атрибутов width и height можно определить размеры области, в которой будет воспроизводиться видео. Но мне все-таки кажется, что это лучше делать через css.

Что-то я примеров не привожу, а вот со вставкой видео это бы надо сделать.

Тег video не поддерживается вашим браузером.

< video width = "600" height = "450" poster = "video/poster.jpg" controls = "controls" >

< source src = "movie.ogv" type = "video/ogg; codecs="theora, vorbis"" >

< source src = "movie.mp4" type = "video/mp4; codecs="avc1.42E01E, mp4a.40.2"" >

< source src = "movie.webm" type = "video/webm; codecs="vp8, vorbis"" >

Тегvideo неподдерживаетсявашимбраузером.

< / video >

Как видите, у нас один и тот же файл – movie. Просто он в разных форматах. Также нужно указать MIME-тип и кодеки. Но это не стоит заучивать и пытаться держать в памяти – просто копируйте.

Figure – тег создан для группировки каких-то элементов. Он неразрывно связан с figcaption. С появлением этих элементов мы можем реализовать то, что раньше делалось другими путями. Например, вставить подпись к изображению. Это можно сделать так:

Подпись к изображению

< figure >

< img src = “image . jpg ”>

< figcaption > Подписькизображению< / figcaption >

< / figure >

Рис. 2. Подпись к изображению.

Datalist – интересный тег, в который можно вписать с помощью тегов option возможные варианты при наборе пользователем слов в текстовом поле input. Это вы можете наблюдать в поисковике – он сам подсказывает вам возможные варианты. Тут, конечно, системы не столь гениальна – вы просто можете записать пару наиболее частых слов, которые люди могут искать у вас на сайте. Элемент связывается с текстовым полем с помощью атрибута list, в котором нужно указать идентификатор, который мы определили для тега datalist.

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

Мы лишь немного коснулись возможностей технологии, также информацию вы можете найти в нашем курсе, посвященном основам HTML5. Он находится в вместе с остальными интересными курсами по сайтостроению.

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

Всем известно, что теги , , , являются презентационными, а следовательно, исходя из парадигмы «структура, представление, поведение» их использование не приветствуется. Куда более привычными представляются элементы , , . Так было на протяжении долгих лет практики разработки. Однако многое поменялось в семантике этих элементов с приходом HTML5 . Теперь у нас 4 новых тега со смыслом и каша в голове.

vs Если раньше все учебники по вёрстке пестрили фразами вроде «используйте вместо », и это было наполовину верно, то сегодня такая привычка может сыграть злую семантическую шутку. А дело всё в том, что авторы HTML5 предлагают использовать для выделения отрывков текста с целью обратить внимание читателя, однако не подразумевая усиления значимости текста или интонации. Спецификация приводит примеры использования для разметки ключевых слов в документе

The frobonitor and barbinator components are fried.

И лидов (первый абзац статьи в журналистике)


Kittens "adopted" by pet rabbit

Six abandoned kittens have found an unexpected new mother figure - a pet rabbit.


Veterinary nurse Melanie Humble took the three-week-old kittens to her Aberdeen home.


В свою очередь , как и раньше, означает повышенную значимость своего содержимого.

vs Отныне содержит текст, выбивающийся из общего окружения, но не имеющий эмоциональной окраски. На мой взгляд, логично использовать там, где типографская традиция предполагает курсив (например, слова на иностранном языке, термины и др.)

Per aspera ad Astra — в переводе с латыни изречение означает «Через тернии к звёздам».

же означает эмфатическое ударение, эмоциональный акцент на данном отрывке текста. Это тот случай, когда в речи мы выделяем слова голосом (интонацией, громкостью и др.)

Казнить нельзя, помиловать.

Внимательно читайте договор! «Текст мелким шрифтом» (информация, являющаяся юридической формальностью, как то лицензия предприятия или юридический адрес и др.) мы, как правило, размечали элементом с классом, задающих в визуальных ПА более мелкий шрифт. Теперь же в нашем арсенале появился новый старый семантический элемент — .Холивар о Раньше был ни чем иным, как зачёркнутый текст. Теперь представляет информацию, которая утратила свою актуальность.
У нас также есть элемент , результатом обработки которого по умолчанию в визуальных ПА является зачёркнутый текст. Он означает изменения в документе, и на первый взгляд их назначение может показаться одинаковым. Однако здесь есть тонкий момент. Рассмотрим пример страницы товара в интернет-магазине.
На ней может быть указано две цены, одна из которых зачёркнута. Её мы размечаем элементом . Это значит, что старая цена утратила свою актуальность (не важно когда это было, важен сам факт). Как проверить, что не ? подразумевает изменения, внесённые в документ (важно то, что в некоторый момент времени документ был изменён ). В нашем же случае, в новом документе уже содержится неактуальная информация.Новая семантика и старый доктайп Если по каким-то непонятным причинам вы не можете заменить доктайп на новый и формально верстаете в HTML 4.01 — не отчаивайтесь. Используйте старые новые элементы с новым смыслом и со временем вы скажете себе «спасибо». Возможно, кто-то скажет, что это неправильно, но ведь эти элементы, кроме даже не являются невалидными. Кроме того, HTML5 разрабатывался с расчётом на обратную совместимость, это же относится и к новой семантике старых элементов. Радикально ничего не изменилось, а добавилась лишь семантическая перчинка.

Все, кто связан с веб-разработкой в целом и с версткой в частности знают о спецификации HTML5, которая в данный момент все еще в разработке и не получила статус рекомендации. Но, тем не менее, все свежие версии браузеров поддерживают нововведения, в той или иной мере. Сегодня пробежимся по новым структурным тегам HTML5

Рассмотрим типичную структуру современного сайта. Можно выделить несколько блоков, которые так или иначе присутствуют в коде — это “шапка” (header), панель навигации (navigation), боковая панель (sidebar), раздел основного контента (content), “подвал” сайта(footer) и некоторые другие. Если используется блочная верстка (а таблицы это прошлый век, я давно не видел табличной верстки в современных сайтах), то эти блоки выводятся с помощью тега div .

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

section

Предназначен для обозначения раздела документа, который может включать в себя заголовки, шапку, подвал и собственно, текст. На мой взгляд, ближайший аналог — блок с классом wrapper (некоторые присваивают ему id, но это не принципиально), который используется как контейнер документа, содержит в себе блоки, привязанные к нему. Своего рода “обертка” для последующих блоков. Также допускается вложенность тега.

header

Обозначает “шапку” сайта или раздела, обычно там расположен заголовок. Ничем особенным не примечателен

nav

Как видно из названия — задает блок, в котором содержится навигация. Обычно это список ссылок на разделы или страницы сайта, оформленный должным образом. Тег может содержаться в тегах section, header и footer , о котором ниже.

footer

“Подвал” сайта или раздела. Полный аналог тега header

article

Задает текст содержания статьи, записи блога и тому подобные вещи.

aside

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

Приведенный ниже код иллюстрирует применение структурных тегов HTML5 .

Название блога

  • Главная
  • Разделы
  • Автор
  • Контакты
Заголовок Lorem ipsum... Второй заголовок Lorem ipsum... Третий заголовок Lorem ipsum... Копирайты и все такое

Обратите внимание, все структурные теги требуют наличия закрывающего тега. Кстати, закрывающий тег /article например, гораздо более информативен, чем /div . Сразу видно, что где находится. Читать такой код намного легче. Хотя бы ради этого стоит внедрить в существующие проекты или запланировать в будущие.

Теперь о грустном — горячо любимый IE до 8 версии включительно не поддерживает данные теги, но отображает информацию между ними. Не применяются к ним стили CSS, если объекты не
созданы с помощью скрипта. Заставить его показывать документ как нужно поможет следующий код:

Document.createElement("header"); document.createElement("footer"); document.createElement("section"); document.createElement("aside"); document.createElement("nav"); document.createElement("article");

Скрипт создает DOM элементы и IE корректно отрабатывает с ними.
Небольшое дополнение — HTML5 по умолчанию интерпретирует любой скрипт как type=»text/javascript” , поэтому специально это указывать не нужно. Что опять же делает код проще и легче. Сплошные плюсы Остальные браузеры работают нормально, единственный Firefox полностью поддерживает теги с версии 4.0, но с версии 3 корректно с ними работает и отображает.
На сегодня все. Если стало интересно — “ ” тут я писал о применении новой спецификации на практике. Оставайтесь на связи — будет интересно.

Которые позволяют четко описывать блоки контента

Что такое HTML5?

HTML5 — это новейшая версия языка Hypertext Markup Language (HTML), представляющая собой наиболее радикальную ревизию этого языка за всю его историю. В этой версии появилось множество новых функций в различных областях. К наиболее значимым из них относятся следующие.

  • Встроенные мультимедийные теги для поддержки аудио- и видеоконтента
  • Тег Canvas для рисования контента непосредственно в браузере
  • «Разумные» формы, позволяющие осуществлять такие операции, как валидация посредством использования требуемого атрибута
Совершенствование квалификационных навыков по данной тематике

Данная статья является частью программы «Путь к знаниям» по совершенствованию квалификационных навыков (Knowledge Path). См. .

Новый набор структурных элементов (тегов) в HTML5 видоизменяет способы структурирования HTML-документов. Новые структурные теги ориентированы на разделение HTML-документа на логические части. Название каждого структурного тега описывает тип контента, для хранения которого предназначен этот тег. Данная статья посвящена подробному описанию этих новых тегов.

История вопроса

В 1989 году Тим Бернерс-Ли (Tim Berners-Lee) создал первый вариант языка HTML с целью преодоления определенных ограничений, которые имелись у существовавших на тот момент методов доступа к информации в Интернете. На начальном этапе существования Интернета ориентирование в нем было сложной задачей. Контент в Интернете представлял собой совокупность отдельных документов, при этом не существовало простого метода навигации по этим документам. И действительно, пользователь должен был знать точный адрес искомого документа и ввести этот адрес вручную. Для решения этой проблемы Бернерс-Ли создал две технологии: протокол HTTP (Hypertext Transfer Protocol) и язык HTML (Hypertext Markup Language).

HTTP — это служебный протокол, с помощью которого Web-серверы доставляют контент. Посмотрите на адресную строку своего Web-браузера. Если ваш браузер показывает полный URL-адрес, то, скорее всего, этот адрес начинается с символов «http://». Эта часть URL-адреса говорит браузеру, протокол какого типа следует использовать при осуществлении запроса к Web-серверу. Когда Web-сервер получает запрос на какой-либо документ, то в большинстве случаев этот документ представлен в формате HTML или преобразуется в этот формат. Именно HTML-документ присылается в браузер, пославший этот запрос.

HTML — это язык сценариев, который говорит Web-браузеру, каким образом следует представлять контент. Внутри контента могут присутствовать ссылки на другие документы, что обеспечивает удобный для пользователя метод навигации между документами в Интернете.

Такое сочетание технологий HTTP и HTML обеспечивает быстрое и простое ориентирование в Интернет-контенте — для осуществления переходов между документами достаточно нажимать мышью на ссылки в тексте. После создания двух вышеупомянутых технологий Бернерс-Ли основал организацию под названием W3C (World Wide Web Consortium). Организация W3C возглавляла разработку первых четырех версий HTML.

Первоначально назначение Интернета состояло в обслуживании простых текстовых документов. Первые браузеры были ориентированы исключительно на текст (другими словами, они не имели никаких затейливых окон — на экране присутствовал только текст). Даже добавление изображений стало весьма значительным достижением — в момент их первого появления. Сегодня люди выполняют в Интернете множество дел — от отправки посланий по электронной почте до просмотра телевизионных программ. Интернет уже превратился в нечто гораздо большее, чем механизм для транспортировки простых текстовых документов. Новые функции и новые способы использования породили новые трудности и новые задачи, для решения которых язык HTML никогда не предназначался.

Организация W3C попыталась решить проблемы сегодняшнего Интернета с помощью стандарта XHTML 2.0 (Extensible Hypertext Markup Language). Однако этот стандарт не получил широкого распространения и к настоящему времени он фактически заброшен. В 2004 году, когда организация W3C концентрировала свои усилия на стандарте XHMTL 2.0, другая организация под названием WHATWG (Web Hypertext Application Technology Working Group) начала разработку стандарта HTML5, который был принят сообществом гораздо благосклоннее, чем стандарт XHTML 2.0. Организация W3C прекратила работы в области XHTML 2.0 и в настоящее время вместе с WHATWG занимается развитием спецификации HTML5.

Поддерживаемые браузеры

На момент написания данной статьи стандарт HTML5 еще не был выпущен официально. Большая часть контента в Web по-прежнему создается в соответствии со спецификацией HTML 4. Тем не менее, некоторые браузеры поддерживают спецификацию HTML5. Ситуация может оказаться непростой, поскольку каждый из этих браузеров способен поддерживать лишь некоторое подмножество функций HTML5. Перед созданием Web-сайта на базе HTML5 проверьте каждый из целевых браузеров на предмет поддержки функций, которые вы собираетесь использовать на своем сайте.

Обновленная декларация doctype

Вне зависимости от возможностей ваших целевых браузеров вы должны сообщать каждому браузеру, что хотите отображать своей контент с использованием спецификации HTML5. Это можно сделать с помощью декларации doctype .

Декларация doctype сообщает браузеру, на какой версии языка разметки написана текущая страница. Она делает это с помощью шаблона DTD (Document Type Definition — определение типа документа). DTD специфицирует правила, используемые языком разметки, благодаря чему браузеры корректно отображают контент.

Концепция doctype-деклараций вполне может сбить с толку. В нынешней спецификации HTML имеется множество деклараций doctype, различия между которыми не вполне очевидны. В таблице 1 показаны доступные на данный момент декларации doctype и их возможности.

Таблица 1. Doctype-декларации и их возможностиDoctype-декларация Возможности Пример
HTML 4.01 strict Разрешает использовать все элементы и атрибуты HTML, однако не допускает презентационных тегов, таких как font. Элементы frameset не разрешены.
HTML 4.01 transitional Аналогична декларации HTML strict, но допускает использование таких тегов, как font. Элементы frameset не разрешены.
HTML 4.01 frameset Аналогична декларации HTML transitional, но разрешает использование элементов frameset.
XHTML 1.0 strict Аналогична декларации HTML strict, однако весь контент должен быть представлен в формате XML. Например, каждый открывающий элемент должен иметь соответствующий ему закрывающий элемент. Элементы frameset не разрешены.
XHTML 1.0 transitional Аналогична декларации HTML transitional, однако весь контент должен быть представлен в формате XML. Элементы frameset не разрешены.
XHTML 1.0 frameset Аналогична декларации XHTML transitional, однако разрешает элементы frameset.
XHTML 1.1 Аналогична декларации XHTML strict, плюс предоставляет такие возможности для модулей, как поддержка Ruby для восточно-азиатских языков.

К счастью, в спецификации HTML5 декларация doctype существенно упрощена. И действительно, в HTML5 имеется лишь одна такая декларация. Чтобы ваш браузер осуществлял отображение с помощью спецификации HTML5, добавьте декларацию doctype, показанную в .

Листинг 1. HTML5-декларация doctype

Декларация должна находиться в самом начале HTML-документа, перед тегом .

Новые структурные теги

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

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

Подход HTML 4

Даже если до этого вы создавали лишь простейшие HTML-документы, вы все равно знакомы с тегом div . В эпоху, предшествовавшую появлению HTML5, тег div являлся основным механизмом для создания блоков контента в HTML-документе. В качестве примера, в демонстрируется использование тегов div для создания простой страницы с заголовком, областью контента и нижним колонтитулом.

Листинг 2. Простая HTML-страница, использующая теги div A Simple HTML Page Using Divs Header Content Footer

Этот подход работает прекрасно; тег div — это превосходный элемент общего назначения. Тем не менее, без рассмотрения атрибута id у каждого тега div трудно сказать, какой раздел документа представляет каждый тег div . Можно приводить доводы в пользу того, что при надлежащем именовании атрибута id его возможностей как индикатора вполне достаточно, тем не менее, использование атрибутов id не является обязательным. Существует множество разновидностей атрибута id , которые могут рассматриваться как одинаково валидные. Сам тег div не содержит указаний на то, какой тип контента ему было поручено представлять.

Подход HTML5

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

Листинг 4. Добавление тега section A Simple HTML Page Header

This is an important section of the page.

Footer Тег article

Тег article обозначает важные разделы контента внутри Web-страницы. Например, в блоге каждый отдельный пост представляет собой значимый фрагмент контента. После добавления тега article к примеру кода мы получаем код, показанный в .

Листинг 5. Добавление тегов article A Simple HTML Page Header

This is an important section of content on the page. Perhaps a blog post.

Footer Тег aside

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

Листинг 6. Добавление тега aside A Simple HTML Page Header

This is an important section of content on the page. Perhaps a blog post.

This is an important section of content on the page. Perhaps a blog post.

Footer Тег footer

Тег footer помечает содержащийся в нем контент как нижний колонтитул текущего документа. После добавления тега footer к примеру кода мы получаем код, показанный в .

Листинг 7. Добавление тега footer A Simple HTML Page Header

This is an important section of content on the page. Perhaps a blog post.

This is an aside for the first blog post.

This is an important section of content on the page. Perhaps a blog post.

Footer

К этому моменту все теги div из исходного примера были заменены структурными тегами HTML5.

Тег navЛистинг 8. Добавление тега nav A Simple HTML Page Header Some Nav Link Some Other Nav Link A Third Nav Link

This is an important section of content on the page. Perhaps a blog post.

This is an aside for the first blog post.

This is an important section of content on the page. Perhaps a blog post.

Footer Итоговый вариант примера

В показан результат замены исходных тегов div новыми структурными тегами HTML5.

Листинг 9. Итоговый вариант примера A Simple HTML Page Header Some Nav Link Some Other Nav Link A Third Nav Link

This is an important section of content on the page. Perhaps a blog post.

This is an aside for the first blog post.

This is an important section of content on the page. Perhaps a blog post.

Footer

Несмотря на то, что в демонстрационных целях этот пример был максимально упрощен, сравнение исходного примера на базе элементов div () с результирующим вариантом () наглядно демонстрирует назначение новых структурных тегов.

Заключение

Новые структурные теги HTML5 описывают контент, который они содержат, и помогают разделить документ на логические разделы. Подобно автору, пишущему книгу, автор документа по-прежнему сможет сам решать, когда и где использовать эти новые элементы в своем документе. Хотя два автора, пишущих одну и ту же книгу, могут выбирать разные способы для разбиения этой книги на главы, использование глав по-прежнему является единообразным подходом к разбиению книг на разделы. Аналогично, хотя два автора некоторой Web-страницы вполне могут выбрать разные структуры, новые структурные элементы HTML5 предоставляют разработчикам Web-страниц новые единообразные возможности, которые не обеспечивались прежними тегами div .