Структура тела документа | Учебник HTML5
Структура тела документа.
Структура тела документа (код между тегами <body>) определяет его видимую часть. Именно в этом коде находится содержимое веб-страницы.
Язык HTML с самого начала предлагал разные способы построения и организации информации в теле документа. Один из первых элементов, выполняющих эту функцию, — <table>. Таблицы позволяют организовывать данные, текст, изображения и инструменты в строки и столбцы, хотя первоначально этот элемент создавался для других целей.
Во времена появления Сети использование таблиц стало настоящей революцией, большим шагом вперед в области визуализации документов и работы с веб-страницами. Позднее эти функции таблиц постепенно взяли на себя другие элементы, позволявшие добиваться тех же результатов быстрее с использованием меньшего объема кода. Создавать, поддерживать и приспосабливать страницы к новым требованиям стало намного проще.
Основным элементом стал <div>. С появлением интерактивных веб-приложений и взаимной интеграции HTML, CSS и JavaScript использование <div> стало привычной практикой. Однако этот элемент, как и <table>, не дает достаточно информации о той части тела документа, которую он представляет. Между открывающим и закрывающим тегами <div> может находиться все, что угодно: меню, текст, ссылки, сценарии, формы и т. д. Другими словами, ключевое слово div всего лишь указывает на некую составляющую тела документа, например на ячейку в таблице, однако ничего не говорит о том, что это за составляющая, каково ее назначение и что находится внутри нее.
Для пользователей такие подсказки не слишком важны, но для браузеров правильная интерпретация содержимого обрабатываемого документа может иметь критическое значение. После революции в области портативных устройств и возникновения новых способов подключения к Сети возможность распознавания всех частей документа обрела особую значимость.
Именно поэтому в HTML5 появились новые элементы, помогающие определить каждую часть документа и упорядочить его тело. В HTML5 документ делится на несколько важных разделов, и основная структура больше не зависит от тегов <div> и <table>.
Как использовать эти новые элементы — решает сам разработчик, однако ключевые слова, выбранные для каждого такого элемента, дают подсказку относительно его назначения. Обычно веб-страница или вебприложение делится на несколько визуальных областей, что улучшает взаимодействие с пользователем и интерактивность. Как мы скоро убедимся, ключевые слова, представляющие каждый из новых элементов HTML5, тесно связаны с этими визуальными областями.
Вам также могут быть интересны следующие статьи:
» УРОК 1. СТРУКТУРА HTML ДОКУМЕНТА
Перед началом работы создадим файл index.html, который будем редактировать в блокноте (Notepad++).
Задаем тип документа с помощью <doctype>
Строка <!DOCTYPE html> идет первой в файле HTML и перед ней не должно быть пробелов и пустых с трок.
<html>
Внутри элемента <html
В теге html указываем атрибут lang, который определяет язык содержимого в документе
<head> — голова
Внутри тега определяются: заголовок страницы, кодировка символов, мета-теги, ссылки на внешние файлы, содержащие стили, сценарии и т.д.
Содержимое тега, за исключением заголовка, не отображается в браузере.
<body> — тело
<meta> — метатеги
Кодировка символов в теге head указывается следующим через метатэг <meta charset=»utf-8″>
В description и keywords указывается описание сайта (description) и ключевые слова (keywords)
<title> — заголовок страницы
Чрезвычайно важный тег.
Заголовок указывается в теге head:
<title>Разработка сайтов с помощью HTML5</title>
<link> — ссылка на style.css
Тэг используется для подключения к документу стилей, сценариев и т.д.
<link rel=»stylesheet» href=»style.css»>
В итоге код страницы будет выглядеть следующим образом:
Таблица стилей — это набор правил форматирования, позволяющий менять внешний вид документа, например размер и цвет текста. Без таких правил текст и другие элементы отображаются на экране с использованием стандартных стилей браузера. Стили представляют собой простые правила, занимающие обычно всего несколько строк кода, и их можно объявить в самом документе HTML. Загрузка стилей CSS из внешнего файла упрощает структуру основного документа, увеличивает скорость загрузки веб-сайта, а также позволяет воспользоваться преимуществами новых возможностей HTML5.[1]
В HTML5 не нужно указывать тип подключаемой таблицы стилей (атрибут type больше не используется). Достаточно двух атрибутов: rel и href. Название атрибута rel происходит от англ. relation (отношение), и его значение определяет, чем для нашего документа является подключаемый файл. В данном случае атрибуту rel присвоено значение stylesheet, то есть мы сообщаем браузеру, что styles.css — это CSS-файл со стилями.
[1] Гоше X. Д. HTML5. Для профессионалов. — СПб.: Питер, 2013. — 496 с
Язык гипертекстовой разметки HTML5 — его структура и основы работы с ним » Мистерия онлайна: продвижение сайтов, способы заработать в интернете
Продолжаем цикл статей об основах веб-языков и разработках в этой области. Ранее мы ознакомились с основами гипертекстового языка HTML, его особенностями и методами разметки текста (тегами).Также нам стало известно, что язык HTML иесно взаимодействует с такими программными разработками, как стили CSS и Javascript и для чего необходимо такое сотрудничество языков. Сегодня мы в подробностях будем рассматривать структуру построения документов на HTML5. Блочное построение документа, его структура – тема сегодняшней статьи. Но вначале нужно понять, что такое HTML5.
Язык программирования HTML5 (от английского HyperText Markup Language) – это пятая версия языка. Как и все предыдущие версии, предназначен для выстраивания структуры документов и представления их в сети. На данный момент версия HTML5 находится в стадии разработки. Цель, преследуемая созданием пятой версии HTML – улучшение языка в области его работы с документами мультимедиа (аудио- и видеоприложениями).
Добавление некоторых синтаксических новшеств, таких, как <audio>, <video> и <canvas>, позволит минимизировать логические и синтаксические ошибки при работе HTML5 с мультимедийными файлами. Также для обогащения семантического содержимого документа (семантика – изучение значения языковых единиц) вводятся и новые значение, такие, как <article>, <section>, <nav> и <header>. Некоторые из атрибутов будут удалены или изменены. Вводятся новые возможности для обработки недопустимых документов, так что все браузеры будут способны работать с такого рода документами.
Любой документ на HTML-языке всегда начинается именно с этого слова. Все предыдущие версии HTML публиковали это объявление приблизительно следующим образом:
Так за какие действия отвечает объявление DOCTYPE? Этот тег предназначен для сообщения браузерам о том, какой стандарт языка использовать – от определения версии HTML будет зависеть визуализация страницы в целом, её рендеринг. Стандарты разработки HTML строго регламентированы и следуют определенным правилам, поэтому работа с чужими кодами, их чтение и отображение в браузере за счет использования стандартов заметно упрощается.
Первоначально объявление DOCTYPE переключало браузер в стандартный режим, и это позволяло пользоваться более новыми стандартами. Для тех документов, которые были написаны с применением старого стандарта, возможно использование режима совместимости, что позволяет добиться нормальной работы браузера. Новое объявление DOCTYPE на сегодняшний день поддерживается почти всеми существующими браузерами, одновременно переключая их в режим работы со стандартами. То есть, каждый вновь создаваемый документ должен содержать атрибут DOCTYPE и соответствовать разработанным стандартам. При этом проверяется весь код документа на его соответствие стандартам.
Условно можно разделить всю страницу, написанную на HTML, на несколько подразделов. Корень основного кода всей страницы – тег <html>. То есть, между тегами <html> и <html> можно расположить практически все, что угодно. Схематично страница на языке HTML представлена так:
Например:
1 | < !DOCTYPE HTML><html lang="ru" xml:lang="ru">< !—Любой текст, изображения, таблицы и т.д. --></html> |
< !DOCTYPE HTML><html lang=»ru» xml:lang=»ru»>< !—Любой текст, изображения, таблицы и т.д. —></html>
В нашем случае тег <html> </html> вмещает в себя атрибут, определяющий язык документа – русский. Для облегчения работы с документом необходимо указывать язык документа. Все содержимое страницы находится именно между тегами <html> …. </html>, кроме объявления DOCTYPE.
Тег <head> так называемая голова документа. Все необходимые данные о странице (как для работы браузера, так и информативные данные для разработчика) располагаются между <head> и </head>. Заголовок страницы, её код – например, UTF-8, meta-данные, такие, как ключевые слова, описание страницы, имя автора и т.д. – все подобные данные находятся именно между тегами <head> и </head>. Здесь же можно подключить внешние файлы, скрипты и библиотеки.
Что такое meta-теги?В них, как было сказано выше, заключается вся информация о странице. Основные мета-теги описаны ниже:
1. Тип кодировки страницы – Charset. В большинстве случаев используется UTF8, но можно задействовать и другие кодировки, например – windows-1251, KOI-8, ISO и т.д. Такой атрибут, как Charset, определяет, какую кодировку использовать для чтения страницы. В HTML5 этот атрибут выглядит следующим образом:
1 | <meta charset="utf-8" /> |
<meta charset=»utf-8″ />
Ранее же эта строка выглядела вот так:
1 | <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> |
<meta http-equiv=»content-type» content=»text/html; charset=UTF-8″ />
Как видите, новая версия языка намного упрощает управление страницей, облегчает и ускоряет её прочтение.
Мета-тег Description, то есть – краткое содержание страницы. Например:
1 | <meta name="description" content="Язык HTML, версия №5, её возможности и описание основных принципов работы " /> |
<meta name=»description» content=»Язык HTML, версия №5, её возможности и описание основных принципов работы » />
Мета-тег Author указывает на то, что страница составлена конкретно каким-либо автором. Например:
1 | <meta name="author" content="Сергей Колычев" /> |
<meta name=»author» content=»Сергей Колычев» />
Применение этого тега необязательно, но желательно для защиты содержимого страницы от копирования.
Мета-тег, обозначающий заголовок страницы или записи на странице – title. Выглядит тег таким образом:
1 | <title>Определение HTML и структура языка. | vashsite.com</title> |
<title>Определение HTML и структура языка. | vashsite.com</title>
Отображается заголовок в названии открывающегося окна или вверху страницы.
Мета-теги link и script используются для подключения к исполнению файлы стилей, внешние файлы и библиотеки. Например, таблицы стилей CSS и JavaScript, а также библиотека jQuery. Выглядят строки подключения этих файлов так:
1 | <link rel="stylesheet" href="style.css" /><script src="js/jquery.js"></script> |
<link rel=»stylesheet» href=»style.css» /><script src=»js/jquery.js»></script>
То есть, для понимания сути этих строк можно представить себе такую ситуацию – файлы CSS и JavaScript на сервере лежат, но без этих строк в документе они просто не будут работать. Небольшой нюанс для использования этих тегов – файлы могут быть как на локальном сервере, так и на удаленном. В последнем случае в мета-тегах необходимо указать полный путь к файлам. В нашем примере мета-тег link используется для подключения файла CSS и использует ссылочные отношения (link relation). Эта подпись дает знать браузеру, что данный файл является файлом стилей. Тег rel имеет также множество других значений.
Альтернативой первому варианту подключения файла стилей может быть такая строка:
1 2 3 4 | <style type="text/css"> a { text-decoration: underline; } p { color: #000000; } </style> |
<style type=»text/css»> a { text-decoration: underline; } p { color: #000000; } </style>
Такой способ напрямую подключает стиль к странице, без подключения файла стилей.
Самый значимый тег в HTML документе – тег <body>. Он также имеет закрывающее окончание </body>. Все данные, которые содержатся внутри этого тега, определяют содержимое страницы – её контент, изображения на странице, всю ссылочную массу, содержащуюся в тексте и т.д. Таким образом, вся информация, которая располагается до тега <body>, можно заключить в своего рода неизменяемый шаблон. Содержимое же тела — <body> </body> может редактироваться, заменяться, улучшаться.
После рассмотрения всех составляющих HTML-документа пятой версии можно попробовать собрать все отдельные части в одно целое, которое и будет законченным HTML-документом, то есть – страницей некоего сайта. Вот так будет выглядеть страница в законченном виде:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | < !DOCTYPE HTML> <html lang="en" xml:lang="en"> <head> <meta charset="utf-8" /> <title>Design Shack</title> <meta name="description" content="A Very Basic HTML5 Anatomy" /> <link rel="stylesheet" href="style.css" /> <script src="js/jquery.js"></script> </head> <body> <!-- Page Content Goes Here --> </body> </html> |
< !DOCTYPE HTML> <html lang=»en» xml:lang=»en»> <head> <meta charset=»utf-8″ /> <title>Design Shack</title> <meta name=»description» content=»A Very Basic HTML5 Anatomy» /> <link rel=»stylesheet» href=»style.css» /> <script src=»js/jquery.js»></script> </head> <body> <!— Page Content Goes Here —> </body> </html>
Если схематично представить структуру HTML страницы, то она будет выглядеть так:
Это так называемая объектная модель документа HTML (DOM).
В следующих публикациях планирую более подробное изучение таблиц CSS, и более детально разобрать структуру HTML5 также будет полезно для правильной работы с любыми версиями HTML-языка.
Оцените статью по 5-бальной шкале:
Загрузка…Вконтакте
Google+
Понравилась запись? Подпишитесь на обновления по почте:
TwitterFacebookПочему не нужно использовать семантические элементы HTML5 – POPEL Agency
HTML5 — качественный скачок для веб-разработки. Он дал веб-разработчикам множество инструментов, которых нам по-настоящему не хватало. Но не все нововведения HTML5 одинаково полезны. Так, есть вполне объективные причины отказаться от использования элементов header
, footer
, nav
, aside
, article
и section
. Но обо всем по порядку.
Структура документа
Структура документа — иерархическое представление веб-страницы, оно создается автоматически на основе верстки. Структура используется, в частности, поисковыми системами и устройствами для людей с ограниченными возможностями. И если людей с ограниченными возможностями многие верстальщики могут игнорировать, ссылаясь на целевую аудиторию сайта, то игнорировать поисковики не станет ни один более-менее вменяемый верстальщик.
Во всех версиях HTML до HTML5 структура документа составляется из заголовков — элементов h2-h6
. Каждый заголовок одного уровня включает в себя все, что находится «под ним» вплоть до следующего заголовка такого же уровня. Напомню, что страница не должна содержать более одного заголовка h2
. Рассмотрим упрощенный пример типичной верстки блога:
<h2>Мой бложек</h2>
<h3>Последние записи</h3>
<h4>Не могу по карте найти выход из леса, помогите!</h4>
<h4>Наконец купил себе iPhone 5! Теперь я самый модный парень на районе!</h4>
<h4>Сегодня вышел iPhone 5! Коплю деньги и питаюсь ягодками и грибочками</h4>
<h4>Сайдбар</h4>
<h5>Архив записей</h5>
<h5>Популярные записи</h5>
<h5>Облако тегов</h5>
<h5>Другое</h5>
<h5>Я на твитторе</h5>
<h5>Мои фоточки на Instagram</h5>
<h5>Блог моего братюни Коляна</h5>
Структура такого документа будет иметь следующий вид:
Структура документа Как видим, структура документа некорректна. Сайдбар не должен быть подразделом раздела последних записей. Он должен быть отдельным разделом. Меняем верстку и используем элемент h3
для заголовка сайдбара. Получаем следующую структуру документа:
Но теперь теряется семантическая важность заголовка, мы просто пытаемся исправить структуру документа с помощью ограниченного набора тегов.
Очевидно, что нужна иная система для создания корректной структуры документа, не зависящая от заголовков. Оказывается, люди бьются над этой проблемой уже достаточно долго.
В первом черновом варианте спецификации не увидевшего свет XHTML 2.0 было предложено новое решение проблемы создания структуры документа. Оно предполагало создания разделов с использованием тега section
и общего тега h
для всех заголовков. Это приводит нас к текущему положению вещей в HTML5.
Создание структуры документа в HTML5
В HTML5 попытались внедрить концепцию создания структуры документа из XHTML 2.0 в HTML и при этом сохранить определенную долю обратной совместимости. Результаты неоднозначны. Вот как предлагается создавать структуру документа в HTML5:
- Каждый раздел документа определяется одним из четырех секционных тегов:
section
,article
,nav
иaside
; тегиh2-h6
для создания разделов в структуре документа не используются. Цель — решить проблемы ограниченностиh2-h6
о которой я писал выше. - В HTML5 нет общего тега
h
для всех заголовков. Вместо этого в чистом HTML5 предлагается использоватьh2
для всех заголовков, уровень любого заголовка будет определяться уровнем его вложенности в секционных тегах. - Но чистого HTML5 на данный момент не существует, поэтому в целях обратной совместимости нужно использовать теги
h2-h6
.
Другими словами, для того чтобы воспользоваться новой схемой создания структуры документа и при этом обеспечить обратную совместимость, необходимо поддерживать две структуры документа в одном.
Но настоящая проблема использования этого подхода даже не в его сложности. Проблема заключается в том, что нас с самого начала дезинформировали. Давайте вспомним, что говорили нам авторы HTML5 про новые семантические элементы в HTML5.
В 2009 году, Йен Хиксон, создатель тестов Acid2 и Acid3, а также один из авторов спецификации HTML5, сказал следующее:
Они [новые элементы], более или менее реализуют наиболее частые просьбы веб-разработчиков на основании наиболее распространенных значений атрибута class
. Их основным предназначением является упрощение верстки и создания стилей.
Если вы когда-нибудь пытались читать спецификации W3C, вам наверняка известно, что они в большей степени написаны для разработчиков браузеров, а не для веб-разработчиков. Поэтому веб-разработчики в большей степени полагаются на авторов спецификации и статьи в тематических блогах, в которых спецификация объясняется понятным для нас языком.
Сторонникам HTML5 стоило объяснять назначение новых элементов доступнее, либо вовсе от них отказаться. Теперь фактически мы имеем две версии HTML5: официальная версия от W3C и WHATWG и версия веб-сообщества.
Правильная разметка страницы с использованием HTML5
Давайте подробнее рассмотрим, как на самом деле предполагается использовать новые семантические элементы в верстке:
- Теги
section
,article
,nav
иaside
используются для создания структуры разделов документа. - Теги
header
иfooter
используются внутри каждого раздела для определения шапки и подложки раздела соответственно. В данном контексте разделом могут быть как разделы, созданные с помощью новых элементов, так и корневой раздел — сам элементbody
. - Теги
h2-h6
используются для создания заголовков разделов в структуре документа, а также для обратной совместимости (читай «совместимости в ближайшем будущем», ведь на данный момент почти никто не поддерживает HTML5-структуру документов).
Думаете, можно просто заменить все элементы div
новыми элементами? Как бы не так! Согласно спецификации, секционные элементы нельзя использовать там, где нужна простая зацепка для каскадных стилей, так что элементы div
из «чистого» HTML5-документа никуда не денутся. Более того, в «чистом» HTML5-документе будут:
- группа элементов
section
,article
,nav
иaside
для создания структуры; - куча элементов
div
для создания стилей; - избыточное использование тегов
h2-h6
для создания обратной совместимости; - все это приправлено избыточными элементами
header
иfooter
внутри каждого раздела, которые ничего не делают.
Вы уже чувствуете «упрощение верстки»? Ну, тогда перейдем к «упрощению создания стилей».
Создание стилей для заголовков в HTML5
Давайте представим себе будущее, где уже не нужно думать об обратной совместимости и мы с чистой совестью можем использовать элементы h2
для всех заголовков всех разделов.
Допустим, у нас есть элемент h2
, на третьем уровне вложенности (по сути, элемент h4
). Какой именно селектор будет его выбирать в наших таблицах стилей? Можете себе представить селекторы для выбора заголовков всех уровней? Не волнуйтесь, я вам помогу:
h2 {font-size: 36px} /* h2 */
section h2 {font-size: 28px} /* h3 */
section section h2 {font-size: 22px} /* h4 */
section section section h2 {font-size: 18px} /* h5 */
section section section section h2 {font-size: 16px} /* h5 */
section section section section section h2 {font-size: 14px} /* h6 */
Это сильно упрощенный пример, который совершенно не учитывает существование трех остальных секционных тегов. Просто ради смеха, вот полноценный пример.
Количество селекторов для выбора заголовков всех уровней растет в геометрической прогрессии!Тут единственное решение — использовать классы для заголовков. Но ведь избавление от классов — та самая проблема, которую пытались решить WHATWG! А если представить себе инструкции для клиентов, использующих CMS для наполнения своих сайтов, хочется встать и уехать.
Что же делать?
Производители ПО для людей с ограниченными возможностями используют альтернативу структуры документов HTML. Так что нам на самом деле не нужно использовать новые элементы. Более того, их стоит избегать, чтобы избежать других проблем и усложнения простых задач.
Альтернатива, о которой я пишу — это WAI-ARIA (далее ARIA). Это не часть спецификации HTML5, это отдельная спецификация W3C, совместимая с HTML5, HTML4 и XHTML 1. Суть сводится к добавлению атрибута role
некоторым элементам.
Сама спецификация очень-очень большая, но нас интересует лишь подраздел, который называется landmarks. Он определяет названия для областей веб-страницы. Вот пример простой веб-страницы с использованием областей ARIA:
<div role="banner"></div>
<div role="main"></div>
<div role="complementary"></div>
<div role="contentinfo"></div>
В примере выше классы добавлены для наглядности, на самом деле типов областей больше и, строго говоря, область banner
не совсем то, что мы вкладываем в понятие header
. Но про все области и тонкости их использования можно написать целую отдельную статью.
При написании статьи использовались материалы с сайта netmagazine.com
Что такое семантическая вёрстка и зачем она нужна — Блог HTML Academy
Давным-давно (лет пятнадцать назад) почти все делали сайты и не переживали о том, что под капотом. Верстали таблицами, использовали всё, что попадётся под руку (а попадались в основном div и span) и не особо заморачивались о доступности. А потом случился HTML5 и понеслось.
Семантическая вёрстка — подход к разметке, который опирается не на содержание сайта, а на смысловое предназначение каждого блока и логическую структуру документа. Даже в этой статье есть заголовки разных уровней — это помогает читателю выстроить в голове структуру документа. Так и на странице сайта — только читатели будут немного другими.
Почему семантика важна
Чтобы сделать сайт доступным. Зрячие пользователи могут без проблем с первого взгляда понять, где какая часть страницы находится — где заголовок, списки или изображения. Для незрячих или частично незрячих всё сложнее. Основной инструмент для просмотра сайтов не браузер, который отрисовывает страницу, а скринридер, который читает текст со страницы вслух.
Этот инструмент «зачитывает» содержимое страницы, и семантическая структура помогает ему лучше определять, какой сейчас блок, а пользователю понимать, о чём идёт речь. Таким образом семантическая разметка помогает большему количеству пользователей взаимодействовать с вашим сайтом. Например, наличие заголовков помогает незрячим в навигации по странице. У скринридеров есть функция навигации по заголовкам, что ускоряет знакомство с информацией на сайте.
Чтобы сайт был выше в поисковиках. Компании, которые создают поисковики, не разглашают правила ранжирования, но известно, что наличие семантической разметки страниц помогает поисковым ботам лучше понимать, что находится на странице, и в зависимости от этого ранжировать сайты в поисковой выдаче.
Классический пример — расписание поезда «Сапсан» в выдаче Google.
Разработчики tutu.ru сверстали таблицу тегом table вместо div и их сниппет оказался в выдаче Google по важному коммерческому запросу.
Семантика прописана в стандартах. Многие разработчики по старинке пользуются конструкциями типа <divnav»></div>. Или вот такой код. Смотрите и сразу понятно, что тут и зачем.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>Заголовок страницы</title>
</head>
<body>
<header>
<!— Шапка сайта —>
</header>
<main>
<!— Основное содержимое страницы —>
</main>
<footer>
<!— Подвал сайта —>
</footer>
</body>
</html>
Основные семантические теги HTML
Среди «старых» тегов из ранних версий HTML тоже есть семантические — например, тег <p>
, который обозначает параграф. При этом теги <i>
или <b>
не семантические, потому что они не добавляют смысла выделенному тексту, а просто определяют его внешний вид.
Но в актуальной версии стандарта HTML Living Standard есть семантические теги почти для всех основных частей сайта, и лучше пользоваться ими. Вот несколько примеров семантических тегов.
<article>
- Значение: независимая, отделяемая смысловая единица, например комментарий, твит, статья, виджет ВК и так далее.
- Особенности: желателен заголовок внутри.
- Типовые ошибки: путают с тегами
<section>
и<div>
.
<section>
- Значение: смысловой раздел документа. Неотделяемый, в отличие от <article>.
- Особенности: желателен заголовок внутри.
- Типовые ошибки: путают с тегами
<article>
и<div>
.
<aside>
- Значение: побочный, косвенный для страницы контент.
- Особенности: может иметь свой заголовок. Может встречаться несколько раз на странице.
- Типовые ошибки: считать
<aside>
тегом для «боковой панели» и размечать этим тегом основной контент, который связан с окружающими его элементами.
<nav>
- Значение: навигационный раздел со ссылками на другие страницы или другие части страниц.
- Особенности: используется для основной навигации, а не для всех групп ссылок. Основной является навигация или нет — на усмотрение верстальщика. Например, меню в подвале сайта можно не оборачивать в
<nav>
. В подвале обычно появляется краткий список ссылок (например, ссылка на главную, копирайт и условия) — это не является основной навигацией, семантически для такой информации предназначен<footer>
сам по себе. - Типовые ошибки: многие считают, что в
<nav>
может быть только список навигационных ссылок, но согласно спецификации там может быть навигация в любой форме.
<header>
- Значение: вводная часть смыслового раздела или всего сайта, обычно содержит подсказки и навигацию. Чаще всего повторяется на всех страницах сайта.
- Особенности: этих элементов может быть несколько на странице.
- Типовые ошибки: использовать только как шапку сайта.
<main>
- Значение: основное, не повторяющееся на других страницах, содержание страницы.
- Особенности: должен быть один на странице, исходя из определения.
- Типовые ошибки: включать в этот тег то, что повторяется на других страницах (навигацию, копирайты и так далее).
<footer>
- Значение: заключительная часть смыслового раздела или всего сайта, обычно содержит информацию об авторах, список литературы, копирайт и так далее. Чаще всего повторяется на всех страницах сайта.
- Особенности: этих элементов может быть несколько на странице. Тег
<footer>
не обязан находиться в конце раздела. - Типовые ошибки: использовать только как подвал сайта.
Как разметить страницу с точки зрения семантики
Процесс разметки можно разделить на несколько шагов с разной степенью детализации.
- Крупные смысловые блоки на каждой странице сайта. Теги:
<header>, <main>, <footer>
. - Крупные смысловые разделы в блоках. Теги:
<nav>, <section>, <article>, <aside>
. - Заголовок всего документа и заголовки смысловых разделов. Теги:
<h2>-<h6>
. - Мелкие элементы в смысловых разделах. Списки, таблицы, демо-материалы, параграфы и переносы, формы, цитаты, контактная информация и прогресс.
- Фразовые элементы. Изображения, ссылки, кнопки, видео, время и мелкие текстовые элементы.
Более подробно методика создания семантической разметки описана в навыке «Создание семантической разметки по макету» и профессиональных курсах HTML Academy.
Создание семантической разметки по макету
Навык, без которого фронтенд-разработчикам ну просто никуда.
ИзучитьСомневаюсь, какие теги использовать
Есть простые правила для выбора нужных тегов.
- Получилось найти самый подходящий смысловой тег — использовать его.
- Для потоковых контейнеров —
<div>
. - Для мелких фразовых элементов (слово или фраза) —
<span>
.
Правило для определения <article>, <section>
и <div>
:
- Можете дать имя разделу и вынести этот раздел на другой сайт? —
<article>
- Можете дать имя разделу, но вынести на другой сайт не можете? —
<section>
- Не можете дать имя? Получается что-то наподобие «новости и фотогалерея» или «правая колонка»? —
<div>
Как точно не нужно делать
Не используйте семантические теги для украшательств. Для этого есть CSS.
Может показаться, что некоторые теги подходят для того, чтобы сделать страницу покрасивее, подвигать текст или добавить ему интервалов. Но то, что браузер по умолчанию отображает теги как-то, как вам нужно, не значит, что это нужно использовать. Посмотрим на пример.
Здесь сразу несколько ошибок:
- Тег
<blockquote>
должен использоваться для выделения в тексте цитат, а не просто случайного выделения текста. Так совпало, что в браузерах этот блок по умолчанию выделен, но это не значит, что нужно его использовать таким образом. - Тег
<ul>
тоже использован для визуального «сдвига» текста. Это неверно, потому что этот тег должен быть использован только для обозначения списков, а во-вторых, в тег<ul>
можно вкладывать только теги<li>
и ничего больше. - Тег
<p>
использован, чтобы визуально раздвинуть текст. На самом деле этот тег используется для выделения параграфов.
А любое выделение, сдвиг или иные превращения текста можно выполнить с помощью CSS.
Поэтому используйте семантические теги по назначению.
HTML5 Структура, Синтаксис, и Семантика
Урок 0. 00:05:15
5.1. Пишем комментарии
Урок 0. 00:05:26
4.3. Используем div в HTML5
Урок 0. 00:07:28
4.4. Работаем со списками в HTML5
Урок 0. 00:08:21
4.5. Правильно выделяем текст
Урок 0. 00:08:17
4.6. Семантика элемента <cite>
Урок 0. 00:05:55
4.7. Используем элемент <adress>
Урок 0. 00:03:56
4.8. Используем элемент <small>
Урок 0. 00:05:12
4.9. Используем элемент <mark>
Урок 0. 00:10:09
4.10. Работаем с <date> и <time>
Урок 0. 00:07:47
4.11. Определяем взаимоотношения между ссылками
Урок 0. 00:06:55
4.2. Группируем контент с помощью aside
Урок 0. 00:07:05
5.2. Работаем с мета тегами
Урок 0. 00:10:37
5.3. Используем атрибуты \»class\» и \»id\»
Урок 0. 00:07:27
5.4. Используем aria landmark roles
Урок 0. 00:06:34
5.5. Введение в microformats, microdata и RDFa
Урок 0. 00:07:06
5.6. Используем microdata
Урок 0. 00:05:34
5.7. Вложенная расширенная информация
Урок 0. 00:06:09
5.8. Проверяем семантику страницы
Урок 0. 00:02:39
Дополнительные ресурсы
Урок 0. 00:02:17
3.6. Определяем основной контент
Урок 0. 00:00:53
1.2. Файлы упражнений
Урок 0. 00:02:10
2.1. Что такое семантика в web
Урок 0. 00:03:57
2.2. Семантика HTML5
Урок 0. 00:05:40
2.3. Модели контента в HTML5
Урок 0. 00:05:01
3.1. Структурируем документ HTML5
Урок 0. 00:03:46
3.2. Определение документов HTML5
Урок 0. 00:04:16
3.3. Поддержка устаревших браузеров
Урок 0. 00:04:26
3.4. Организовываем контент
Урок 0. 00:07:44
3.5. Создаем разделы документа
Урок 0. 00:01:12
1.1. Вступление
Урок 0. 00:08:51
3.7. Используем заголовки правильно
Урок 0. 00:03:56
3.8. Пишем навигационую панель
Урок 0. 00:06:32
3.9. Верная вложенная структура
Урок 0. 00:07:33
3.10. Структурируем хэдеры
Урок 0. 00:04:11
3.11. Структурируем футеры
Урок 0. 00:04:01
3.12. Проверяем структуру документа
Урок 0. 00:03:07
3.13. Корневые элементы
Урок 0. 00:06:52
4.1. Работаем с figure и figcaption
Стандарты кодирования в HTML5
Зачастую веб-разработчики даже не подозревают о существовании определенных стандартов кодирования в HTML. Однако в период с 2000 по 2010 годы многие веб-разработчики перешли с HTML на XHTML. При этом XHTML вынудил разработчиков писать валидный и «хорошо сформированный» код. HTML5 же, когда дело доходит до валидации кода, допускает некоторую небрежность.
Тем не менее, единообразие по стилю облегчит другим понимание вашего HTML кода.
Возможно, когда-нибудь программам, вроде программ чтения XML данных, потребуется прочитать ваш HTML код. Таким образом, использование хорошо сформированного, близкого к XHTML синтаксиса будет вполне разумным подходом.
Всегда следите, чтобы ваш код был аккуратным, чистым и хорошо сформированным.
Используйте корректный тип документа
На первой строке всегда декларируйте тип документа:
<!DOCTYPE html>
Если вы хотите соблюдать последовательность с написанием тегов в нижнем регистре, то вы можете использовать следующее определение типа документа:
<!doctype html>
Имена элементов пишите маленькими буквами
HTML5 допускает одновременное использование в именах элементов больших и маленьких букв. Однако, лучше всегда использовать только маленькие буквы. Это объясняется следующими соображениями:
- Смешение больших и маленьких букв в именах тегов считается плохой практикой
- Разработчики обычно используют маленькие буквы (как в XHTML)
- Написание в нижнем регистре выглядит чище
- В нижнем регистре легче писать
Плохо:
<SECTION>
<p>Это параграф текста.</p>
</SECTION>
Очень плохо:
<Section>
<p>Это параграф текста.</p>
</SECTION>
Хорошо:
<section>
<p>Это параграф текста.</p>
</section>
Закрывайте все HTML элементы
В HTML5 вы не обязаны закрывать все элементы (например, элемент <p>). Тем не менее, мы все же рекомендуем закрывать все HTML элементы.
Плохо:
<section>
<p>Это параграф текста.
<p>Это параграф текста.
</section>
Хорошо:
<section>
<p>Это параграф текста.</p>
<p>Это параграф текста.</p>
</section>
Закрывайте пустые HTML элементы
В HTML5 закрывать или нет пустые элементы зависит от желания веб-разработчика.
Допустимо:
<meta charset="utf-8">
Также допустимо:
<meta charset="utf-8" />
Тем не менее, закрывающая косая черта (/) ОБЯЗАТЕЛЬНА в XHTML и XML.
Если ожидается, что к вашей веб-странице будут обращаться XML приложения, то в пустых HTML элементах лучше использовать закрывающую косую черту!
В именах атрибутов используйте маленькие буквы
В HTML5 при написании имен атрибутов можно смешивать большие и маленькие буквы.
Мы рекомендуем в именах атрибутов всегда использовать только маленькие буквы. Это вызвано следующими причинами:
- Смешение больших и маленьких букв в именах атрибутов считается плохой практикой
- Разработчики обычно используют маленькие буквы (как в XHTML)
- Написание в нижнем регистре выглядит чище
- В нижнем регистре легче писать
Плохо:
<div>
Хорошо:
<div>
Заключайте значения атрибутов в кавычки
HTML5 допускает написание значений атрибутов без кавычек. Однако мы рекомендуем всегда заключать значения атрибутов в кавычки, потому что
- Смешение больших и маленьких букв в значениях считается плохой практикой
- Значения в кавычках легче читать
- Вы ДОЛЖНЫ заключать в кавычки, если в значениях есть пробелы
Очень плохо:
Это не будет работать, потому что в значении есть пробелы
<table class=table striped>
Плохо:
<table class=striped>
Хорошо:
<table>
Атрибуты изображений
При определении изображений всегда используйте атрибут «alt». Этот атрибут важен, когда изображение по какой-то причине не отображается.
Также, всегда определяйте ширину и высоту изображения. Это уменьшает слом макета страницы, так как браузер будет резервировать место для изображения еще на этапе загрузки страницы.
Плохо:
<img src='html5.gif'>
Хорошо:
<img src='html5.gif' alt="HTML5">
Пробелы и знак равно
HTML5 допускает пробелы вокруг знака равно. Однако, когда пробелов нет, то такой код легче читать, и это лучше группирует сущности.
Плохо:
<link rel = "stylesheet" href = "styles.css">
Хорошо:
<link rel="stylesheet" href='styles.css'>
Избегайте длинных строк кода
При использовании HTML редактора, неудобно читать HTML код, если приходится прокручивать окно влево или вправо.
Следует стараться, чтобы строка кода в длину не превышала 80 символов.
Пустые строки и отступы
Не следует без веских причин добавлять пустые строки.
Для лучшей читабельности пустые строки следует добавлять только для разделения больших и логически единых блоков кода.
Также, для лучшей читабельности добавляйте два пробела отступов. Не используйте для этого табуляцию.
Не используйте ненужные пустые строки и отступы. Нет необходимости ставить отступ перед каждым элементом.
Необязательно:
<body>
<h2>Famous Cities</h2>
<h3>Tokyo</h3>
<p>
Tokyo is the capital of Japan, the center of the Greater Tokyo Area,
and the most populous metropolitan area in the world.
It is the seat of the Japanese government and the Imperial Palace,
and the home of the Japanese Imperial Family.
</p>
</body>
Лучше:
<body>
<h2>Famous Cities</h2>
<h3>Tokyo</h3>
<p>Tokyo is the capital of Japan, the center of the Greater Tokyo Area,
and the most populous metropolitan area in the world.
It is the seat of the Japanese government and the Imperial Palace,
and the home of the Japanese Imperial Family.</p>
</body>
Таблица:
<table>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
<tr>
<td>A</td>
<td>Description of A</td>
</tr>
<tr>
<td>B</td>
<td>Description of B</td>
</tr>
</table>
Список:
<ol>
<li>London</li>
<li>Paris</li>
<li>Tokyo</li>
</ol>
Пропускать или нет <html> и <body>?
По стандарту HTML5 тег <html> и тег <body> могут не использоваться.
Следующий код согласно стандарту HTML5 считается валидным:
<!DOCTYPE html>
<head>
<title>Заголовок страницы</title>
</head>
<h2>Это текстовый заголовок</h2>
<p>Это абзац текста.</p>
Однако мы не рекомендует пропускать теги <html> и <body>.
Элемент <html> — это корень документа. Это рекомендованное место для определения языка страницы:
<!DOCTYPE html>
<html lang="en-US">
Декларация языка страницы важна как для специализированных приложений (например, программ чтения с экрана), так и для поисковых систем.
Кроме этого, если не написать тег <html> или тег <body>, то это может сломать структуру DOM и XML приложения. А пропуск тега <body> к тому же может привести к ошибками в старых браузерах (IE9).
Пропускать ли тег <head>?
Согласно стандарту HTML5 тег <head> может не использоваться.
По умолчанию, браузеры будут добавлять все элементы, расположенные перед открывающем тегом <body> внутрь созданного ими элемента <head>.
Вы можете снизить сложность структуры HTML, пропустив тег <head>:
<!DOCTYPE html>
<html>
<title>Заголовок страницы</title>
<body>
<h2>Текстовый заголовок</h2>
<p>Это текстовый абзац.</p>
</body>
</html>
Однако мы не рекомендуем пропускать тег <head>, так как это еще не вошло в повседневную практику и может запутать веб-разработчиков.
Метаданные
Элемент <title> является обязательным в HTML5. Заголовок страницы должен быть наполнен значением:
<title>Стандарты синтаксиса и кодирования в HTML5</title>
Чтобы обеспечить правильную интерпретацию и корректное индексирование страницы поисковыми системами, определение языка и кодировки символов страницы необходимо декларировать как можно раньше:
<!DOCTYPE html>
<html lang="ru-RU">
<head>
<meta charset="UTF-8">
<title>Стандарты синтаксиса и кодирования в HTML5</title>
</head>
Установка вьюпорта (окна просмотра)
«Вьюпорт» — это видимая пользователю область веб-страницы. Эта область разница от устройства к устройству и на мобильных телефонах будет меньше, чем на экране компьютера.
В HTML5 был введен метод, позволяющий веб-дизайнерам контролировать вьюпорт при помощи тега <meta>.
Следует всегда использовать элемент управления вьюпортом <meta> в следующей форме на всех веб-страницах:
<meta name="viewport" content="width=device-width, initial-scale=1.0">
Данный элемент управления вьюпортом <meta> предоставляет браузеру инструкцию, как контролировать размеры и масштабирование страницы.
Часть width=device-width устанавливает ширину страницы в соответствии с шириной экрана текущего устройства (которая будет разной в зависимости от используемого устройства).
Часть initial-scale=1.0 устанавливает начальный уровень увеличения, когда страница впервые загружается браузером.
Ниже вы можете увидеть пример веб-страницы на экране смартфона с установленным мета тегом вьюпорта и без него:
Страница без метатега вьюпорта
Страница с мета тегом вьюпорта
HTML комментарии
Короткий комментарий должен писаться на одной строке:
<!-- Это комментарий -->
Комментарии, занимающие более одной строки, должны записываться следующим образом:
<!--
Это пример длинного комментария. Это пример длинного комментария.
Это пример длинного комментария. Это пример длинного комментария.
-->
Длинные комментарии легче читать, если они имеют отступ в два пробела.
Таблицы стилей
Используйте простой синтаксис для подключения внешних каскадных таблиц стилей (атрибут type не нужен):
<link rel="stylesheet" href='styles.css'>
Короткие правила могут записываться в сжатом виде в одну строку:
p.intro {font-family: Verdana; font-size: 16em;}
Длинные правила следует записывать на нескольких строках:
body {
background-color: lightgrey;
font-family: "Arial Black", Helvetica, sans-serif;
font-size: 16em;
color: black;
}
- Открывающие скобки размещайте на одной строке с селектором
- Используйте один пробел перед открывающими скобками
- Для отступов используйте два пробела
- После каждой пары свойство-значение, включая последнюю, ставьте точку с запятой
- Кавычки используйте только со значениями, содержащими пробелы
- Закрывающие скобки пишите на новой строке без отступа
- Старайтесь, чтобы длина записи на одной строке была не больше 80 символов
Загрузка JavaScript в HTML
Для загрузки внешних скриптов Javascript используйте простой синтаксис (атрибут type не нужен):
<script src='myscript.js'>
Доступ к HTML элементам при помощи JavaScript
«Неряшливость» во время кодирования HTML может привести к ошибкам в работе скриптов JavaScript.
Следующие два выражения JavaScript дадут разные результаты:
var obj = getElementById("Demo")
var obj = getElementById("demo")
В именах файлов используйте маленькие буквы
Некоторые веб-серверы (Apache, Unix) являются регистрозависимыми при обращении к файлам, т. е. к файлу с именем «london.jpg» нельзя получить доступ как «London.jpg».
Другие веб-серверы (Microsoft, IIS) на размер букв в именах файлов не обращают внимание, т. е. к файлу с именем «london.jpg» можно обращаться как «London.jpg», так и «london.jpg».
Если в вашем коде используются как верхний, так и нижний регистр букв, то вам придется быть чрезвычайно внимательным и последовательным.
Если вы переносите свой сайт с регистронезависимого на регистрозависимый сервер, то малейшая ошибка может обрушить весь ваш ресурс!
Чтобы избежать этой проблемы, в именах файлов всегда используйте только буквы в нижнем регистре (маленькие буквы).
Расширения файлов
HTML файлы должны иметь расширение .html или .htm.
CSS файлы должны иметь расширение .css.
JavaScript файлы должны иметь расширение .js.
Разница между .htm и .html
Нет никакой разницы между расширениями .htm и .html. Файлы и с одним и с другим расширением будут рассматриваться любым браузером или веб-сервером как файл с HTML кодом.
В настоящее время разница между ними лежит лишь в культурной плоскости:
- .htm отдает духом ранних DOS систем, у которых были ограничения на длину расширения файла в 3 символа.
- .html напоминает о системах Unix, у которых таких ограничений не было.
Технические особенности
Если в URL не указывается имя файла (например, http://example.com/css/), то сервер передаст файл по умолчанию. Обычно файлами по умолчанию являются index.html, index.htm, default.html и default.htm.
Если на сервере в качестве имени файла по умолчанию установлено только имя «index.html», то и у вас должен быть файл с именем «index.html», но никак не «index.htm».
Тем не менее, любой сервер можно сконфигурировать так, чтобы было более одного файла по умолчанию. Таким образом вы можете иметь столько файлов по умолчанию, сколько вам нужно для решения ваших задач.
В любом случае полное расширение для HTML файлов — это .html, и нет никаких причин, почему его не следует использовать.
Вверх Миграция с HTML4 на HTML5Структура HTML-документа до и после HTML5 — вот что изменилось »
Раскрытие информации: Ваша поддержка помогает поддерживать работу сайта! Мы зарабатываем реферальный сбор за некоторые услуги, которые мы рекомендуем на этой странице. Узнать больше Если вы хотите писать семантическую разметку — и поверьте нам, вы действительно хотите писать семантическую разметку — тогда вам необходимо правильно структурировать HTML-документы. Элементы html
, head
и body
были частью спецификации HTML с середины 1990-х годов, а еще несколько лет назад они были основными элементами, используемыми для структурирования документов HTML.Однако за последние несколько лет ситуация кардинально изменилась, поскольку HTML5 добавил множество новых тегов, которые можно использовать для добавления богатого семантического значения в структуру HTML-документа.
Структура документа HTML До HTML5
Если вы когда-либо использовали HTML, то знаете, что каждый бит HTML должен быть заключен в теги html
. Сначала должен появиться открывающий тег
, а закрывающий тег
должен появиться внизу документа.Все остальные биты HTML должны располагаться между этими двумя тегами.
Элемент head
— это первый элемент, который появляется после открывающего тега html
. В документе head
мы размещаем такие вещи, как страница title
и метаданных
, мы добавляем JavaScript на нашу страницу с тегом script
, и мы [ link
] к внешним таблицам стилей и другим ресурсам.
На большинстве веб-страниц элемент head
очень загружен.По этой причине мы создали руководство, в котором объясняются теги, которые обычно появляются в элементе head
, и для чего эти теги используются.
Все содержимое, которое отображается на веб-странице, вложено между открывающими и закрывающими тегами body
. Тело — это основной контейнер содержимого, составляющего веб-страницу.
До HTML5 это было почти все для базовой структуры HTML-документа. Весь наш код был помещен между тегами body
и стилизован с помощью CSS.Однако теперь, когда HTML5 получил широкую поддержку среди современных браузеров, пришло время реализовать новые теги HTML5, которые придадут нашим HTML-документам гораздо более значимую структуру.
Новые семантические теги, добавленные HTML5
В этом кратком руководстве мы коснемся всех новых тегов, добавленных как часть HTML5 для определения структуры и содержимого веб-страницы. В этом руководстве мы рассмотрим следующие элементы:
Использование этих элементов не так сложно, как может показаться на первый взгляд, и большинство из них не требуют пояснений.Мы быстро рассмотрим каждый новый элемент, а затем составим HTML-шаблон. Вы сможете использовать эти новые теги, чтобы добавить в разметку богатое семантическое значение.
Заголовок Элемент
используется для содержания содержимого, которое отображается в верхней части каждой страницы вашего веб-сайта: логотипа, слогана, запроса поиска и, возможно, меню навигации. В большинстве случаев элемент заголовка лучше всего позиционировать как прямой потомок элемента
body , но также можно разместить его внутри основного элемента
, если вы предпочитаете.
Используйте элемент main
между header
и footer
элементами, чтобы содержать основное содержимое вашей веб-страницы. Элемент main
не может быть потомком article
, aside
, header
, footer
или nav
element. Вместо этого он должен быть прямым потомком элемента body
. Думайте об этом как о прямой замене div
, который вы использовали в прошлом для завершения всего содержимого вашей страницы.
Можно также использовать более одного основного элемента
на веб-странице. Например, если домашняя страница вашего блога включает в себя пять ваших последних сообщений, было бы целесообразно заключить каждое сообщение в отдельный основной элемент
- или вы можете заключить каждый в теги article
.
Навигационные меню обычно размещаются вверху веб-страницы, на боковой панели или в нижнем колонтитуле страницы. Где бы вы ни разместили навигационное меню, оберните его тегами nav
.Обратите внимание, что вам не нужно использовать теги nav
для каждой ссылки, только для блоков ссылок, которые обеспечивают навигацию по всему сайту или навигацию для определенной части веб-сайта.
Если ваш веб-сайт содержит сообщения в блогах, статьи или любой другой контент, который может также отображаться на другом веб-сайте в качестве синдицированного контента, заключите этот контент в статью , публикацию
. Вы можете использовать элемент article
практически в любом месте, кроме вложенного в элемент адреса , но в большинстве случаев элемент
article
будет прямым потомком основного элемента
или элемента section
, который является прямой потомок основного элемента
.
Элемент section
используется для идентификации контента, который является основным подразделом более крупного целого. Например, если вы опубликовали длинную электронную книгу в формате HTML, было бы разумно заключить каждую главу в элемент section
. Аналогичным образом, если у вас есть боковая панель (семантически заключенная в помимо тегов
), которая содержит четыре раздела - рекламу, подсказку поиска, связанные сообщения и форму подписки на новостную рассылку - можно было бы заключить каждый из этих четырех разделов в раздел .
тегов, поскольку письменный план содержимого боковой панели будет включать строку для каждого из четырех разделов.
Существует некоторая путаница относительно того, когда использовать раздел
, а когда div
. Вот хорошее практическое правило, которое поможет вам понять, когда использовать каждый из них:
- Используйте
div
, если вы обертываете какой-то контент, чтобы упростить стилизацию контента или облегчить получение некоторого JavaScript. держись за это. - Используйте раздел
Если ваш веб-сайт содержит информацию, которая не имеет прямого отношения к основному содержанию страницы, было бы целесообразно заключить эту информацию в помимо тегов
.Например, если вы пишете сообщение, которое включает некоторые технические термины, и добавляете определения для этих терминов на боковой панели, имеет смысл заключить эти определения в теги , помимо тегов
. Также часто вся боковая панель веб-сайта блога оборачивается за исключением тегов
, чтобы было ясно, что боковая панель не является частью основного содержимого страницы.
<адрес>
Элемент адреса
предоставляет контактную информацию для ближайшего родительского элемента article
или элемента body
, который его содержит.Используйте элемент address
внутри статьи
, чтобы указать контактную информацию автора статьи. Используйте его вне статьи
в элементах main
или footer
или как прямой потомок элемента body
, чтобы предоставить контактную информацию владельцу веб-сайта.
Нижний колонтитул
отображается в нижней части раздела документа. Обычно нижний колонтитул
является прямым потомком элемента body
, но его также можно использовать в основном элементе
, разделе
или статье
.Чаще всего элемент нижнего колонтитула используется для его размещения в нижней части HTML-документа, чтобы содержать такие вещи, как уведомление об авторских правах, ссылки на связанный контент, адрес , информация о владельце веб-сайта
и ссылки на административные элементы. например, политика конфиденциальности и условия обслуживания веб-сайта.
Вы также можете использовать элемент нижнего колонтитула
в статье
для предоставления метаданных об этой конкретной статье. Например, если для публикации сообщения на форуме использовались теги article
, было бы целесообразно заключить информацию об авторских правах, а также дату и время публикации сообщения в элемент нижнего колонтитула и разместить его в нижней части статьи
.
.
Шаблон HTML-документа
Шаблон ниже покажет вам, как все эти элементы правильно вложены вместе. Мы приглашаем вас скопировать его и использовать в качестве стандартного шаблона для всех ваших HTML-документов.
Заголовок вашей веб-страницы находится здесь
<заголовок>
<основной>
<статья>
<сторона>
<раздел>
<адрес>
<сторона>
<раздел>
<нижний колонтитул>
<адрес>
Джон - писатель-фрилансер, любитель путешествий, муж и отец. Он пишет о веб-технологиях, таких как WordPress, HTML и CSS.
Структурные элементы HTML5
Структурные элементы HTML5Вернуться на страницу 3 недели »
Есть группа элементов HTML, которые созданы, чтобы в целом придать нашим документам большую структуру.
Вы уже использовали первый элемент раздела: body
.
Кузов
Элемент body
содержит все содержимое нашего документа.
Обычно охватывает все, кроме мета-элемента
и его подэлементов.
Основной
Большинство веб-страниц содержат много информации, которая повторяется по всему сайту. Это включает в себя брендинг, навигацию, рекламу и информацию об авторских правах.
Основной элемент
используется для обозначения уникального содержимого каждой страницы.
В приведенном ниже примере рецепт чили является уникальным содержанием. Основной элемент
обернут вокруг частей рецепта:
Рецепт чили Книга рецептов
<основная>
Рецепт чили
Инструкции ...
HTML5 Разделение содержимого
Некоторые из этих структурных элементов попадают в категорию «секционирующее содержимое».
Статья и Раздел
Элементы article
и section
используются одинаково для представления тематических частей документа. Основное различие между ними состоит в том, что статьи предназначены для инкапсуляции автономного контента.
Выбирая между статьей или разделом, подумайте, будет ли контент по-прежнему иметь смысл, если его убрать с текущей страницы. На это указывает и статья
.
Раздел
, с другой стороны, является лишь частью большего целого и не стоит сам по себе.
Рассмотрим следующий пример простого рецепта:
Бутерброды PB&J
Вот как приготовить эту закуску.
Ингредиенты
- Арахисовое масло
- Желе
- Хлеб
Инструкции
- Возьмите два ломтика хлеба.
- Намажьте арахисовое масло на одну сторону обоих ломтиков.
- Намажьте желе на арахисовую кнопку одного ломтика хлеба.
- Сожмите ломтики хлеба.
Рецепт в целом может стоять сам по себе. Это означает, что он должен быть помечен как , артикул
.
Два подраздела рецепта не существуют сами по себе, поэтому каждый из них должен быть разделом
.
Разметка рецепта статьями и разделами будет выглядеть так:
<статья>
Бутерброды PB&J
Вот как приготовить эту закуску.
<раздел>
Ингредиенты
- Арахисовое масло
- Желе
- Хлеб
<раздел>
Инструкции
- Возьмите два ломтика хлеба.
- Намажьте арахисовое масло на одну сторону обоих ломтиков.
- Намажьте желе на арахисовую кнопку одного ломтика хлеба.
- Сожмите ломтики хлеба.
Примечание: Элементы статьи и раздела также могут содержать элементы статьи и раздела.
в сторону
Элемент в стороне
представляет контент, который косвенно связан с родительским элементом.
Этот элемент назван в честь боковой панели. Однако не считайте это только боковой панелью, поскольку это означает, что контент будет отображаться сбоку.Сторона могла проявиться в различных контекстах и визуальных обработках.
Вот несколько примеров допустимых отступлений:
- расценки на вытягивание
- справочная информация
- дополнительные ссылки
- выноски
Элемент nav
используется для обозначения областей страницы, используемых для основной навигации.
На странице может быть несколько элементов навигации. Однако этот элемент следует зарезервировать для основных областей навигации, а не просто для списков ссылок.
Верхний и нижний колонтитулы
Элементы верхнего и нижнего колонтитула используются в контексте содержащего их элемента.
Наиболее распространенная форма - это когда содержащий элемент является элементом тела.
Когда содержащий элемент -
body
В этом случае заголовок обычно используется для обозначения фирменного стиля веб-сайта и основных элементов навигации.
Нижний колонтитул будет использоваться для разметки содержимого в конце страницы: информации об авторских правах, навигационных ссылок или другого содержимого.
<заголовок>
<основной> <статья>
Рецепт чили
Чили ....
<нижний колонтитул>
Все рецепты © me
Если содержащим элементом является статья
или статья
В этом случае в заголовке будут размечены вводные элементы раздела или статьи. Нижний колонтитул будет отмечать закрывающие элементы<статья>
<заголовок>
Бутерброды PB&J
Автор: датчанин
Вот как приготовить эту закуску.
<раздел>Ингредиенты
<раздел>
- Арахисовое масло
- Желе
- Хлеб
Инструкции
- Возьмите два ломтика хлеба.
- Намажьте арахисовое масло на одну сторону обоих ломтиков.
- Намажьте желе на арахисовую кнопку одного ломтика хлеба.
- Сожмите ломтики хлеба.
<нижний колонтитул>
Еще больше отличных рецептов от датчанина можно найти здесь
Вернуться на страницу 3 недели »
Структура страницы HTML 5
Какие теги структуры требуются для HTML-страницы в спецификации версии 5?
Базовая структура следующая:
Что изменилось в HTML 5? Формат значительно упрощен по сравнению с предыдущим стандартом, особенно с минимальным типом документа.
ДОКТИП
Тип документа был введен, чтобы обозначить разницу между старыми браузерами, которые следовали обычному формату в 90-х годах, и более новыми браузерами, которые ближе к спецификациям HTML 3, а затем 4 и 5.
В большинстве браузеров отсутствует совместимость порядка DOCTYPE со старыми форматами.
Его отсутствие означает для Internet Explorer, что страница предназначена для старых браузеров. Это может не иметь никакого значения, если latoyout простой, состоящий исключительно из заголовков и абзацев, но если мы включим таблицы, слои и другие элементы, рендеринг может полностью измениться.
Язык и атрибут
lang Атрибут lang предназначен не для браузеров, а для инструментов обработки, которые должны понимать содержимое в соответствии со своим языком.
И среди этих инструментов поисковые системы не включены, они игнорируют этот атрибут и предпочитают полагаться на контент, чтобы знать язык.
Следовательно, его можно считать необязательным. Даже если атрибут lang обычно используется для всего документа, он может быть назначен конкретному элементу, например:
Цитирование на французском языке
Голова
Тег содержит несколько типов элементов:
- Кодирование с помощью метатега или кодировки.
- Заголовок страницы.
- Ссылки с тегом ссылки.
- И прочие указания метасами.
Кодировка
Самый распространенный тег имеет следующий вид:
Он определяет тип контента, его формат, который обычно является text / html, и его кодировку, обычно кодировку utf8.
Этот тег предназначен для сервера, который уведомляет браузер. Его можно не указывать, если сервер настроен, например, через .htaccess, для назначения формата страницам для данного расширения, например html.
Этот тег должен быть первым в разделе HEAD, потому что сервер будет обрабатывать приведенный выше текст как ASCII без определенного формата, который он известен только после анализа тега.
Обычно этого базового формата достаточно для всех ситуаций. Существуют и другие кодировки, например iso-8859-1, но они ничего не добавляют в латинский мир.Для страниц на китайском или японском языке требуется другая кодировка.
Однако следует проявлять осторожность при включении динамического содержимого, которое должно быть закодировано в указанной кодировке.
HTML 5 может упростить кодировку:
Фактически это было реализовано до HTML 5, но ранее не входило в спецификацию. Цитаты не требуются.
По умолчанию предполагается HTML, необходимо только указать кодировку.Осталось убедиться, что код страницы находится в этом формате, который не обязательно является автоматическим для всех редакторов HTML.
Ссылки
В шапке можно указать много ссылок. Некоторые из них важны для браузера как ссылка на таблицу стилей, RSS-канал или значок.
Другие необязательны в качестве значения предварительной выборки, которое загружает страницу в фоновом режиме и ускоряет отображение.
Образец ссылок
Favicon
Таблица стилей
RSS или Atom
Другие общие атрибуты: nofollow , который запрещает поисковым системам переходить по ссылкам на странице.
Структура содержимого
В HTML 4 нет специализированных тегов структуры, содержимое структурируется с помощью
HTML 5 вводит несколько тегов, чтобы помочь представить обычную структуру документов.
- <заголовок>
- Содержит введение к части или всей странице.
- <нижний колонтитул>
- Содержит информацию, которая обычно помещается в конце раздела. Мы можем разместить его в конце раздела или страницы, но также и в любом месте раздела.
Например, он содержит ссылку на указатель, которую можно разместить под заголовком. - <раздел>
- Разделы выделяют части контента. Затем веб-мастер должен связать таблицу стилей или динамически использовать ее в сценариях.
По сути, мы можем обрамить раздел рамкой или отделить его от приведенного выше пробелом. - Представляет заголовок раздела. Тег
может содержать в начале тег. - Этот контейнер предназначен для включения группы ссылок.
- <статья>
- Обозначает типичный контент, который можно найти на разных страницах или даже на разных сайтах. Это может быть сообщение на форуме, статья в газете, и это может быть инструмент для облегчения извлечения содержимого (путем отделения ненужных данных, таких как меню навигации).
- <сторона>
- Для выделения чего-то отдельного от фактического содержимого и может определять боковую панель.
- <адрес>
- Содержит контактную информацию, например имя автора.
- Используется для обозначения части текста, выделения, как старого , но более общего.
Есть много других семантических тегов, которые описаны в документах по ссылкам.
См. Также
- Таблица. Организация данных в таблице.
Список литературы
© 2010-2012 Xul.fr
Структура документа HTML5
Структура документа HTML5
Документ HTML 5 в основном состоит из заголовка и тела.Head содержит данные, которые информируют браузер и даже веб-серверы о том, что это документ HTML 5. С другой стороны, Body содержит контент, который фактически отображает веб-браузеры.
В этой главе рассматриваются все основные элементы, необходимые для создания базового документа HTML 5.
Создание структуры документа
Каждый документ HTML 5 использует уникальную комбинацию элементов и содержимого для определения страницы. Структура всех задокументированных страниц свойств одинакова и содержит:
- Объявление вверху, которое указывает, что это документ HTML 5
- Заголовок документа
- Тело документа
Набор элементов HTML 5 составляет документ HTML 5.Некоторые из этих элементов являются важными, а другие - необязательными. Однако вы всегда можете найти следующие три элемента на каждой странице в дополнение к объявлению типа DOC вверху.
сообщает браузерам, что это на самом деле документ HTML 5. Хотя существуют и другие типы DOC-типов, это наиболее часто используемое объявление.
За объявлением DOCType следуют открывающие и закрывающие теги .Эти теги содержат все, что находится внутри документа, включая Head и Body
.открывающих и закрывающих тегов, следуют за открывающим тегом Html. Эти теги содержат информацию о теле, заголовке страницы, определениях, ярлыках и т. Д. Вы можете использовать только определенные элементы разметки в заголовке HTML 5. Некоторые из этих элементов включают стиль, заголовок, базу, ссылку, скрипт и мета. В HTML 5 эти элементы все вместе называются элементами заголовка HTML.
После закрывающего тега заголовка следует открывающий и закрывающий теги тела.Они содержат весь контент, отображаемый в браузере, а также соответствующие коды HTML 5.
Теоретически вы можете создать документ HTML 5 без чего-либо в теле, но вам нужны хорошо продуманные Head и Body, чтобы правильно проиндексировать вашу страницу в браузере.
Следующий пример содержит все основные элементы, необходимые для создания страницы HTML 5.
Пример HTML5 с базовыми тегами
Базовая структура страницы
Обратите внимание, что элемент head также содержит метатег.Метаэлементы используются для указания других метаданных, таких как автор страницы, описание, ключевые слова, последнее изменение и т. Д.
Если вы сохраните указанный выше документ HTML 5 и увидите его в браузере, он будет отображаться как:
Обратите внимание, что браузер ничего не показывает, кроме заголовка страницы на вкладке. Это потому, что вы пока ничего не сделали с телом.
Элемент Body в HTML5
После успешной настройки Head, включая метаданные и заголовок страницы, пора создать некоторую разметку HTML5 в теле, которая фактически появится в браузере.Тело похоже на большой контейнер, содержащий все, что вы хотите видеть в браузере.
Взгляните на Пример
Пример элемента корпуса
Базовая структура страницы Создание документа HTML 5
Это основной элемент
Вы должны увидеть в браузере следующий результат.
Это фантастика. Теперь ваш браузер показывает заголовок вверху и некоторое содержимое под заголовком. Это потому, что вы добавили разметку HTML 5 в элемент Body. Точно так же вы можете редактировать свой документ HTML 5, добавляя любую разметку в элемент Body.
Заголовки и абзацы в HTML5
Заголовки и абзацы - два наиболее важных и фундаментальных элемента, используемых в HTML 5.
Заголовки в HTML5 Обозначаемый тегом
является самым большим, а заголовок последнего уровня
- самым маленьким.
Основное назначение заголовков - разбивать документы на разделы. Они помогают создать организованную структуру, разбить поток текста на странице и предоставить визуальные подсказки о группировке контента.
Заголовки в HTML 5 Пример
Базовая структура страницы Это заголовок первого уровня
Это заголовок второго уровня
Это заголовок третьего уровня
Это заголовок четвертого уровня
Это заголовок пятого уровня
Это заголовок шестого уровня
В разных браузерах заголовки отображаются по-разному.Google Chrome отображает их следующим образом:
Абзацы в HTML5Любой, кто знаком с HTML 4 или другой версией HTML, также должен быть знаком с тегом абзаца. Абзац - это текстовый блок, который появляется чаще, чем любой другой элемент на веб-странице.
Вы должны использовать открывающие и закрывающие теги , чтобы сгруппировать ваш контент по абзацам, потому что веб-браузеры не распознают жесткий возврат внутри редакторов HTML5.Создать абзац в HTML5 очень просто. Вы должны поместить открывающий тег
внутри тела, написать текст и закрыть абзац тегом
.Взгляните на пример.
Абзацы в HTML 5 Пример
Базовая структура страницы это абзац
это еще один абзац
Когда вы увидите код в браузере, вы получите что-то вроде этого:
Благодаря тегу абзаца
у нас есть два разных абзаца на нашей веб-странице HTML 5.Таким же образом вы можете создать любое количество абзацев на своей веб-странице. Просто не забудьте правильно закрыть абзацы
; в противном случае это может вызвать множество проблем с отрисовкой, и ваша веб-страница может не загрузиться должным образом. Упражнение
Задача: Создайте базовую страницу HTML 5 и назовите ее "Упражнение". Также добавьте заголовок
, содержащий текст «Упражнение 2» и абзац, объясняющий, что это за упражнение о
Решение
Упражнение Упражнение 2
Упражнение 2 посвящено тегам заголовков и абзацев, изученным в главе 2.
Базовая структура HTML5. HTML5 - это современное наследие HTML с… | Назмус Сакиб | КОРОНА
Фото Мигеля А. Падриньян из PexelsHTML5 - это современное наследие HTML с множеством новых обновлений и функций. Для разработки усовершенствованного веб-сайта необходим HTML5. HTML5 сделал многое проще и удобнее как для разработчика, так и для пользователя. Так что быть экспертом только в HTML недостаточно. В этом мире, полном конкуренции, чтобы стать отличным веб-разработчиком, нужно хорошо владеть HTML5 с другими веб-языками.
В этой статье я собираюсь обсудить базовую структуру HTML5. Хотя HTML5 - это современная версия HTML, есть много вещей, которые отличаются от HTML. Один из них - конструкция.
Общая страница HTML5 содержит 5 элементов. Это <заголовок>, и Возможно, вам не понадобятся все эти элементы при создании страницы. Эти элементы потребуются в зависимости от структуры вашей страницы.
Теперь давайте узнаем, какую роль эти элементы играют на странице. Каждый элемент представляет каждую часть документа. Все остальные теги, атрибуты или, можно сказать, элементы будут использоваться внутри этих 5 основных структурных элементов.
Заголовок
Заголовок определяется элементами
Навигация
Навигация используется элементом . Не на каждой странице есть навигация. Вот практический пример навигации:
Нет, я не продвигаю ILLUMINATION, я просто использую этот снимок экрана, чтобы понять персонал. Здесь вы увидите, что я создал границу красного цвета.Эта часть поможет вам перейти в любую часть этого веб-сайта. Это что-то вроде навигации к месту назначения. Подобно этой навигации, используется для перехода через любую часть этой страницы, чтобы можно было легко найти то, что они ищут. Некоторые веб-страницы используют этот элемент, некоторые нет.
Артикул
Это легко понять. Посмотрите на первую страницу средства массовой информации. Там вы найдете множество статей. Все они являются частью элемента article. По сути, он содержит основную часть страницы.Затем он разделен на множество разделов. Точно так же, как вы можете увидеть множество статей на первой странице средства массовой информации. Каждый из них является разделом элемента article. Статья определена <статья>.
В стороне
В стороне для дополнительной информации о ваших статьях или, я бы сказал, содержат. Иногда мы их используем, иногда нет. Это необязательно. Иногда мы используем aside для других целей, таких как реклама или какое-либо объявление. Вот почему мы не на всех сайтах.Вот пример
Опять же! Я не собираюсь продвигать какие-либо публикации. То, что вы видите в рамке с красной рамкой, находится в стороне. Есть много статей, которые мы называем контентом, и вы можете получить дополнительную информацию о той публикации, которая называется сторонней. Подобно артикулу, сторона определяется <сторона>.
Нижний колонтитул
Нижний колонтитул - это то, что мы видим в конце любой веб-страницы. Нижний колонтитул - это завершение веб-страницы. Нижний колонтитул содержит информацию об авторских правах, политике конфиденциальности, условиях использования и т. Д.Вот такая картинка, которую вы можете увидеть ниже.
Видите эту область с красной рамкой? Это то, что называется нижним колонтитулом. Вы всегда найдете его в конце любой веб-страницы. <нижний колонтитул> используется для определения нижнего колонтитула.
Вот и все, что касается базовой структуры веб-страницы HTML5. Вы можете увидеть их практически на всех сайтах, которые вы регулярно посещаете. Хотя они не везде используются. Существует множество кодов и программ, которые используются для идеального запуска страниц.Но все это начинается с HTML.
HTML 5 Структура документа: элементы и примеры - Урок информатики [2021]
HTML 5
Лаура - начинающий веб-дизайнер. Она очень рада созданию своей первой HTML-страницы для школьного проекта! Следующим проектом, над которым она будет работать, будет HTML5. Давайте останемся с Лаурой, пока она изучает основы HTML5.
HTML5 - это последняя версия языка гипертекстовой разметки, включающая три основных компонента:
- HTML - это язык разметки, использующий теги для создания веб-страниц, которые можно просматривать в браузере.
- CSS или каскадные таблицы стилей используются для макета и дизайна веб-страниц.
- JavaScript - это язык программирования, написанный на HTML-странице, который позволяет создавать интерактивные эффекты на веб-страницах.
Лаура хотела создать школьный информационный бюллетень. Она использовала тег до
, где
- заголовок с наибольшим размером шрифта, а
- заголовок с наименьшим размером шрифта.Позже она добавит изображение для логотипа школы.
Она отметила, что тег
Лаура затем добавила контактную информацию, автора и информацию об авторских правах в конец страницы с помощью тега .
Тег статьи
Первая статья в информационном бюллетене была посвящена Посланию Директора. Лаура создала тег
Aside Tag
Тег - это элемент HTML5, который используется для предоставления дополнительной информации об абзаце или тексте. Это похоже на боковую панель на распечатанных страницах. В этом году школа начала работать поздно, поэтому Лаура использовала тег aside, чтобы предоставить эту информацию.
Тег раздела
Лаура использовала тег
Figure / FigCaption Tag
Лаура хотела добавить забавную ссылку о шоколаде в раздел. Она использовала тег , чтобы включить изображение, и тег
Имело смысл добавить интерактивную ссылку на веб-сайт Hershey, поэтому Лаура добилась этого с помощью тега . Тег
Подробная информация Тег
Лаура рада узнать о теге
Mark Tag
Еще один тег, вызвавший интерес Лауры, - это тег . Этот тег используется для выделения текста так же, как если бы вы использовали маркер на распечатанной бумаге! Лаура использовала этот тег, чтобы выделить раздел о школьных поездках.Это привлечет внимание к событию, которое будет в восторге от всех!
Конструкция и состав • Силос Creativo
Скидка 20%
Темы WordPress, такие как Divi, по $ 1 за каждую
Одно из преимуществ, которое HTML5 привнес в область веб-дизайна , состоит в том, что он включает в себя структуру тегов HTML, более семантическую, то есть разметку со смыслом для того, что действительно будет служить указанному идентификатору.Другими словами, HTML5 значительно упростил работу веб-дизайнера по сравнению с предыдущими версиями , особенно когда нам нужно изменить веб-дизайн нашего коллеги.
Структура сайта в HTML5
При разработке веб-сайта есть определенные элементы или части страницы, которые четко определены и примерно приняты большинством сообщества, будь то пользователи или дизайнеры. Мы ссылаемся на верхний колонтитул, нижний колонтитул, в сторону….
Однако в предыдущие годы эти элементы были разработаны в сети как разделов с помощью тега