От SGML произошли языки разметки HTML и XML. HTML – это приложение SGML, а XML– это подмножество SGML, разработанное для упрощения процесса машинного разбора документа.
HTML (HyperText Markup Language – язык гипертекстовой разметки) – стандартный язык разметки документов в сети Интернет. Большинство веб-страниц содержат описание разметки на языке HTML. Язык HTML интерпретируется браузерами, а полученный в результате интерпретации форматированный текст отображается на экране монитора компьютера или мобильного устройства.
В настоящее время W3C принята версия HTML 5. Стандарт был официально рекомендован к применению W3C в 2014 году, но еще с 2013 года всеми браузерами оперативно осуществлялась поддержка, а разработчиками – использование рабочего стандарта HTML 5. Целью разработки HTML 5 является улучшение поддержки мультимедиа- технологий, сохранение обратной совместимости, удобочитаемости кода для человека и простоты анализа HTML страниц для парсеров.
В стандарте HTML 5 вводится понятие семантической верстки, удобной для более эффективной последующей стилизации страницы средствами CSS, а также для индексации страниц поисковыми системами. В дополнение к этому HTML 5 устанавливает API, который может быть использован совместно с языком JavaScript, убраны устаревшие теги, добавлен элемент холст с методами рисования 2D, контроль над проигрыванием медиафайлов, управление хранилищем веб-данных, реализация технологии drag-and-drop применительно к элементам страницы DOM, регистрация обработчиков MIME типов, возможность применения микроразметки и др.
С принятием стандарта HTML 5 наконец появилась возможность полного разделения содержания, представления и поведения веб-страниц. Эта возможность получила реализацию в новой концепции разработки Web 2.0.
XML (eXtensible Markup Language) – расширяемый язык разметки, является подмножеством SGML, рекомендован W3C.
Спецификация XML описывает XML-документы и частично описывает поведение XML-процессоров – программ, читающих XML- документы и обеспечивающих доступ к их содержимому. XML разрабатывался как язык с простым формальным синтаксисом, удобный для создания и обработки документов программами и одновременно удобный для чтения и создания документов человеком, с подчёркиванием нацеленности на использование в Интернете.
Пример корректного XML документа:
<?xml version="1.0" encoding="utf-8"?>
<book>
<title>Введение в Perl</title>
<authors>Рэндал Шварц, Том Кристианен<authors>
<publisher>BHV Group</publisher>
<year>1999</year>
<content>Содержание</content>
</book>
В настоящее время XML широко используется для межсетевого обмена данными в веб-сервисах, в протоколе SOAP, в качестве содержания документов открытого формата ODF, для хранения структурированных данных в файловых хранилищах, в системных конфигурационных файлах и др.
Синтаксис HTML
Документ на языке HTML представляет собой набор элементов, заключенных в угловые скобки, – тегов. Теги могут быть одинарными, не имеющими содержимого, и парными (контейнерными), имеющими содержимое. Перед именем завершающего контейнерного тега ставится символ / (слеш).
Пример одиночного тега:
<br>
Пример контейнерного тега:
<p>Загадки разума</p>
Контейнерные теги могут включать в себя другие вложенные теги:
<p><strong>Что в имени тебе моем?</strong></p>
Каждый тег может содержать атрибуты и через символ = (равенство) их значения, заключенные в кавычки:
<p class="pod">Александр Великий</p>
Атрибуты являются свойствами, предоставляющими дополнительную информацию о теге.
Имена тегов и их атрибутов специфицированы в стандарте HTML и соответствуют общим правилам идентификаторов: имена содержат латинские буквы, цифры, символы тире и подчеркивания; каждое имя начинается с латинской буквы. Прописные и заглавные буквы в именах не различаются.
Если тег имеет несколько атрибутов, то они отделяются друг от друга пробелами:
<meta http-equiv="content-type" content="text/html">
Если атрибут не имеет содержания, то символ = (равенство) и пустые кавычки опускаются:
<td nowrap>Пиррова победа</td>
Универсальные атрибуты:
- id – уникальный идентификатор элемента на веб-странице;
- class – имя класса стилевой таблицы;
- src – источник встраиваемого содержимого;
- href –ссылканасвязанныйресурс.
Запрещается использовать угловые скобки < и >, а также кавычки вне HTML разметки. При необходимости использования данных символов в тексте они должны замещаться на специальные сущности < > и " соответственно. Список наиболее часто употребляемых сущностей приведен в таблице.
Для указания комментариев в тексте HTML документа используется метатег
<!-- текст комментариев -->
Внутрь комментариев разрешается добавлять другие теги. Содержимое комментариев браузером не отображается.
Структура HTML документа
Типовая структура HTML документа:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Заголовок страницы
</head>
<body>
... содержание страницы ...
</body>
</html>
Согласно спецификации HTML 5 первым тегом документа является метатег <!DOCTYPE html>, после которого размещается сам HTML документ. Данный метатег представляет собой команду для корректного отображения документа в браузере.
Тег <html> является главным корневым тегом веб-страницы, он содержит два контейнерных тега <head> и <body>, задающих загловок страницы и ее содержание. Заголовок <head> содержит служебную часть, которая содержит различные теги, определяющие тип и формат содержимого для браузера (метатеги), а также ссылки на различное подгружаемое содержимое: каскадные стилевые таблицы CSS, скрипты со сценарем поведения Javascript и др. В данном примере указано минимальное содержимое веб-страницы в HTML 5: тег <meta> с помощью атрибута charset задает кодировку документа; тег <title> задает заголовок окна. Тело документа <body> представляет собой непосредственно выводимое содержимое на экран браузера.