Новые элементы HTML5
Самые основные новые элементы HTML5 облегчают выкладку веб-страниц и отладку кода
Это также облегчает автоматические услуги для сканирования документов в Интернете и понимания важности различных компонентов страницы
Для макета страницы и ключевых функций в настоящее время существуют определенные элементы, такие как:
- <header> и <footer>
- <nav> для всех видов меню
- <side> для боковых панелей или близлежащего контента
- <article>, куда идет контент, такой например, как сообщение в блоге
- <section> похож на <div>, но более ориентирован на контент
- <audio> и <video>, чтобы браузеры управляли воспроизведением каждого из них. Больше нет плагинов и обновлений безопасности для этого
- <canvas> специально для того, чтобы вы могли рисовать графику с помощью отдельного языка сценариев
- <embed> для размещения внешнего контента или приложений на странице
Вот хороший визуальный очерк их Smashing Magazine:
Вот некоторые из более продвинутых функций HTML5, включая интеграцию API, что делает программирование в JavaScript для сложных действий более простым и последовательным в браузерах:
- Воспроизведение аудио и видео: обеспечивает воспроизведение мультимедиа в браузерах без использования плагинов.
- Геолокация: укажите местоположение посетителя.
- Перетаскивание: для загрузки файлов из браузера с помощью простых жестов.
- Кэш приложения: обеспечивает поддержку для запуска HTML-сайтов в автономном режиме.
- Веб-воркеры: выполняет JavaScript в фоновом режиме (неблокирование).
- События, отправленные сервером: позволяют серверам обновлять веб-страницы в браузере после их загрузки, проще и эффективнее, чем AJAX и JavaScript.
- Автономное хранение данных: обеспечивает способ хранения данных локально в браузере независимо от файлов cookie. Как использовать автономное хранилище HTML5 на вашем сайте предоставит вам хороший обзор этой возможности.
HTML5 и «Будущее Интернета» предлагают другое руководство по этим функциям. Вот один из их выводов — они очень ценят кэш приложений:
Нужно выяснить, какие функции поддерживаются в браузерах? HTML5Test имеет полезную интерактивную оценку функций и поддержки браузера:
Существует так много новых функций, что невозможно создать каталог и упомянуть здесь все из них. Проверьте ссылки ресурсов внизу этого руководства для более глубоких ресурсов, которые я рекомендую.
Интеграция различных инструментов в HTML
Сторонние сервисы интегрируются с языком HTML достаточно легко (благодаря его простоте). К примеру, без проблем встраиваются системы аналитики (Яндекс.Метрика и Google Analytics), формы для внесения контактов, заказа обратного звонка, оформления подписки. Все получается просто и наглядно.
Чаще всего требуются следующие интеграции:
- PHP. Когда в тело веб-страницы вводится ссылка на файл.
- JavaScript. Включается полностью весь скрипт либо, опять же, ссылка на файл.
- Ajax. Тут присутствуют элементы и асинхронного JS, и XML.
- Iframes. Позволяет добавлять на HTML страницы интерактивные составляющие.
С внедрением таких функций HTML действительно больше становится похож на язык программирования. Основная его спецификация – управлять внешним видом страниц сайта, а добавление программных модулей позволяет расширить функционал. Изучить язык HTML с нуля можно очень быстро, хватит и двух дней. Но имейте в виду, что его возможности все же ограничены.
Чаще всего новички спрашивают, сколько времени может уйти на освоение HTML. Дело в том, что для создания простых сайтов вам хватит и азов (их вы ухватите очень быстро, за считанные часы). А вот опыт придет уже с практикой
Ведь важно научиться строить качественные рабочие каркасы, которые будут корректно отображать на страницах всю необходимую информацию
Синтаксис
HTML5 использует синтаксис HTML, который совместим с HTML4- и XHTML1-документами, опубликованными в Интернете, но несовместим с нечёткими функциями SGML языка HTML4, такими как команды обработки (processing instructions) и сокращенная разметка (shorthand markup). Документы, использующие синтаксис HTML почти всегда имеют медиа-тип .
HTML5 также описывает подробные правила синтаксического анализа (включая обработку ошибок), которые в значительной степени совместимы с уже существующими популярными реализациями парсеров. Агенты пользователей должны использовать эти правила для документов, которые имеют медиа-тип . Ниже приведен пример документа, который соответствует HTML-синтаксису языка HTML5:
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Example document</title> </head> <body> <p>Example paragraph</p> </body> </html>
HTML5 также определяет медиа-тип для документов, использующих HTML-синтаксис и содержащих непроверенное (разрабатываемое) содержимое.
Другим синтаксисом, который можно использовать для HTML5, является XML. Этот синтаксис совместим с реализациями и документами XHTML1. Документы, использующие такой синтаксис, должны иметь медиа-тип XML, а элементы должны быть помещены в пространство имён по правилам, в дальнейшем устанавливаемым спецификациями XML.
Ниже представлен пример документа, который соответствует XML-синтаксису языка HTML5
Обратите внимание на то, что документы XML должны иметь медиа-тип XML, например, или
<?xml version="1.0" encoding="UTF-8"?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Example document</title> </head> <body> <p>Example paragraph</p> </body> </html>
2.1. Кодировка символов
Для HTML-синтаксиса языка HTML5 у авторов документов существует три варианта задания кодировки:
- На транспортном уровне можно использовать заголовок HTTP .
- Использовать символ маркера порядка байтов Unicode (BOM) в начале файла. Этот символ обеспечивает сигнатуру для использования необходимой кодировки.
- Используя элемент с атрибутом . Например, может использоваться для установки кодировки UTF-8. Эта запись заменяет более длинную , которая также допустима в HTML-синтаксисе.
Для установки кодировки в случае XML-синтаксиса авторы должны использовать правила, которые установлены в спецификациях XML.
2.2. DOCTYPE
HTML-синтаксис HTML5 требует наличия DOCTYPE для гарантирования того, что браузер отобразит страницу в режиме поддержки стандартов. У DOCTYPE нет иного предназначения и поэтому он необязателен для XML. Документы с медиа-типом XML всегда отображаются в режиме поддержки стандартов.
Объявление DOCTYPE должно быть следующим: <!DOCTYPE html>, оно регистронезависимо в HTML-синтаксисе. DOCTYPE в ранних версиях HTML был длиннее, потому что язык HTML был основан на SGML, и поэтому требовал ссылки на DTD. В HTML5 такой ссылки не требуется, и DOCTYPE нужен лишь для включения режима поддержки стандартов для документов с HTML-синтаксисом. Браузеры уже выполняют переключение в режим стандартов при использовании объявления .
2.3. MathML и SVG
HTML-синтаксис языка HTML5 допускает использование элементов MathML и SVG непосредственно внутри документа. Ниже представлен пример использования такой возможности:
<!doctype html> <title>SVG в text/html</title> <p>Зелёный круг: <svg><circle r="50" cx="50" cy="50" fill="green"/></svg> </p>
Более сложные сочетания также допустимы. Например, с помощью SVG-элемента вы можете внедрять MathML, HTML внутрь фрагмента SVG, который сам находится внутри HTML.
2.4. Прочее
Существует несколько других синтаксических изменений, о которых следует упомянуть:
- HTML теперь имеет встроенную поддержку идентификаторов IRI, хотя они могут использоваться в полной мере, только если документ имеет кодировку UTF-8 или UTF-16.
- Атрибут может иметь значение пустой строки или верного идентификатора языка, также как и атрибут в XML.
Некорректное использование атрибутов форм
Вы, должно быть, уже в курсе, что в HTML5 введено множество новых атрибутов форм. Мы рассмотрим их в ближайшие месяцы, но сейчас я коротко расскажу, как делать не стоит.
Логические атрибуты
Логические атрибуты также существуют для мультимедиа элементов и некоторых других. Правила, описываемые мною, применимы и для них.
Некоторые из новых атрибутов форм являются логическими, т.е. их наличие в разметке определяет поведение. В том числе это:
- autofocus
- autocomplete
- required
Я редко встречаю их, но в случае с required я видел такое:
В конечном счете, это не грозит ничем плохим. Клиентский HTML парсер встретит атрибут required в разметке и применит соответствующие правила. Но что если сделать по-другому и написать required=«false»?
Парсер по-прежнему видит атрибут required и применит соответствующее поведение, несмотря на то, что Вы указали ему не делать этого. Очевидно, это не то, чего Вы хотели.
Есть 3 способа применить логическое значение. (Второе и третье характерны для XHTML)
- required
- required=»»
- required=«required=»
Применительно к нашему примеру Выше, мы могли бы написать так (в HTML):
—
взято с http://habrahabr.ru/
Markup Languages: What Are They?
Markup Languages are the essential tools required to create a webpage. Each webpage has some text, images, or any other sort of structured data displayed to the user. Presenting the textual or visual information to the user defines the markup of a website. In designing a webpage, we may need different fonts for different words, different colors for different types of text, and so on. We also need a universality in the markup, i.e., the webpage requires to look the same irrespective of the browser. It makes it necessary to have a standard markup language through which web pages can present information to the user.
Markup Languages use tags to determine the presentation format of the data. Tags are used to represent data in a structured and organized way. Common examples of tags include header tags, body tags, and so on. The most common markup language for web pages is HTML, which was designed by Tim Berners-Lee, the inventor of the World Wide Web.
HTML, which stands for HyperText Markup Language, was the first internet-based markup language used for web pages. However, HTML quickly evolved, and with the release of subsequent versions of it, it became a sort of standard for markup languages. Although HTML is more of a standard than a single language, so are commonly referred to as HTML itself up to versions up-to HTML4. It is because of the need to differentiate it from the significant changes brought in by HTML5, which is the next and latest version of HTML.
However, before the release of HTML5, the World Wide Web Consortium (also known as W3C) started developing an extension of HTML based on the XML format to solve some browser compatibility issues. XML is another standard of markup language that is very similar to HTML but is somewhat stricter than HTML in error handling and formatting. The resulting language was named XHTML, which stands for eXtensible HyperText Markup Language. It was very similar to HTML4 but introduced some stricter rules.
Обзор HTML 5
В то время как концепция XHTML 2.0 предназначена быть революционной, группа разработчиков HTML выбирает прагматичный подход и создает HTML 5, как эволюционировавшую технологию. Получается, что HTML 5 является шагом вперед, но по-прежнему большей частью совместим с текущими стандартами HTML 4/XHTML 1. Однако HTML 5 предлагает множество изменений и расширений для HTML 4/XHTML 1, указывающих на многие недочеты своих предыдущих спецификаций.
В спецификации HTML 5 речь идет об отходе HTML от разметки документа и внедрении его в языки для создания web-приложений
С этой целью основное внимание концентрируется на создании более надежного и функционального клиентского окружения, предоставляющего для разработки web-приложений. Среди прочего, спецификация предусматривает то, что реализации должны предоставить на стороне клиента постоянные хранилища данных (как вида ключ/значение, так и SQL-базы данных), API для воспроизведения аудио и видео, 2D-рисования посредством элемента canvas, обмен сообщениями между документами, отправляемые сервером события и сетевые API
HTML 5 поддерживает SGML-подобный синтаксис, совместимый с текущими спецификациями HTML (хотя некоторые наиболее эзотерические черты SGML ). В спецификацию также включена вторичная «XML-сериализация», позволяющая разработчикам использовать правильные XML-документы. Путем сохранения SGML-подобной сериализации группа разработчиков HTML 5 достигла баланса между прагматизмом и прогрессом: разработчики могут выбирать между разметкой с использованием HTML-сериализации (которая больше похожа на HTML 4.x) или XML-сериализации (больше похожа на XHTML 1.x).
HTML теги
HTML теги используются для определения структуры контента на веб-странице. При помощи тегов мы размечаем контент и даем понять браузеру, как именно показывать ту или иную часть контента (к примеру, текст, изображение, гиперссылка, и т.д.). Сами теги в браузере не показываются.
HTML теги заключаются в угловые скобки < >, к примеру <html>.
Большинство тегов в HTML парные (к примеру, <p> </p>), т.е. состоят из двух частей — открывающего (< p>) и закрывающего (< /p>) тегов.
Одиночные теги не имеют закрывающего тега. Например, одиночным является тег <img/>, который используется для определения изображения.
Рассмотрим вышесказанное на примере.
Если нам нужно обозначить в HTML документе абзац (который в HTML документе является элементом), мы используем HTML тег <p>. Содержимое абзаца мы запишем между открывающим (<p>) и закрывающим (</p>) тегами.
Пример
Абзац между двумя тегами — открывающим <p> и закрывающим </p>.
Инструменты создания XHTML-документов
Для создания XHTML-документов можно использовать любой, самый простой текстовый редактор, такой как, например, Notepad (Блокнот). Кроме того, для того, чтобы тестировать и совершенствовать свои работы, нужно иметь браузер. Помимо упомянутых элементарных средств, есть и специализированные программы для подготовки и редактирования XHTML-документов, а также программы для проектирования и подготовки мультимедийных аксессуаров. Иметь подключение к Интернет, хотя и полезно, вовсе не обязательно для создания XHTML-документов.
При создании документа наиболее эффективным оказывается ступенчатый подход — сначала написать содержимое, затем разметить его. После того, как содержимое документа определено, уже гораздо легче сделать один проход, чтобы основательно и результативно расставить XHTML-теги, размечая текст. Если действовать по-другому, разметка может отвлечь от содержания.
Прежде чем публиковать новый документ в Интернет, нужно протестировать его, просмотрев, как он выглядит в браузере. Рекомендуется иметь несколько браузеров, работающих на разных компьютерах, чтобы добиться уверенности в том, что великолепная презентация в одном браузере не превратится в кошмар на другом. Самые популярные в настоящее время браузеры и, следовательно, непременные участники тестирования — это Microsoft Internet Explorer, Netscape Navigator, Opera, Mozilla Firefox, Google Chrome последних версий.
Следует иметь реальный доступ в Интернет, если вы всерьез намерены учиться и совершенствовать свои умения. Абсолютной необходимости в этом, однако, нет, поскольку можно создавать и просматривать документы локально. Обращение к Интернет является необходимым при разработке и тестировании, если в документ включены гиперссылки на другие ресурсы. К тому же, в Интернет можно найти массу информации и самых свежих подробностей, а также примеров использования HTML/XHTML.
XHTML-документ должен быть одинаково интерпретирован браузерами на различных компьютерных платформах. Так как различные платформы предъявляют разные требования к имени файла, то стандартом оформления имени файла для Internet будет набор правил, подходящих для всех платформ:
- в имени файла разрешено использовать следующий набор символов: a-z,A-Z, «_», 0-9;
- длина имени файла должна быть не более 8 символов;
- расширение файла должно быть «htm»;
- первый символ имени должен быть буквой;
- рекомендуется в названии файлов использовать только строчные символы.
Ссылки[править]
Как я уже говорил, основным свойством, которое отличает нормальный текст и гипертекст, является гиперссылка. Гиперссылки создаются с помощью тега <a> с атрибутом href, который принимает значение нужного нам URL. Например, нужно создать страницу, которая содержит ссылку на статью. Это может выглядеть примерно так:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title> Ссылка </title> </head> <body> Здесь можно найти материалы о web-дизайне: <a href="http://ru.wikibooks.org/wiki/HTML">ru.wikibooks.org</a>. </body> </html>
Теперь на странице надпись ru.wikibooks.org станет гиперссылкой.
Обычно страницы в интернете не сидят одиноко. Они размещаются группами, которые называются узлами. Сайт — это по моему определению набор страниц и других файлов, которые имеют общую часть URL. Например, все страницы, начинающиеся на http://www.microsoft.com, принадлежат одному сайту одной маленькой компьютерной фирмы. Далее следует символ «/», и адрес продолжается.
Можно сделать у себя на компьютере маленькую модель сайта. Для этого нужно создать новый каталог, в котором будем размещать файлы. Затем в каталоге разместить файл index.htm. Если есть какая-то ссылка на ваш сайт, без указания, какой конкретно файл загружать, то будет загружен именно index.htm. Далее мы можем создать ещё одну папку внутри нашей. Пусть она называется subdir. Если в ней разместить файл index.htm, то для перехода к нему нужно будет написать: «www.ваш_сайт.com/subdir/».
Например, если вы певец и хотите поделиться своими песнями с другими, вы можете положить в папку с сайтом файл track1.mp3, а в файле index.htm написать:
<html> <head> <title>Моя музыка</title> </head> <body> Я только что записал новый трек. Вы можете <a href="track1.mp3">скачать его здесь.</a> </body> </html>
Если файлы находятся в одном каталоге, то в атрибуте href достаточно написать название файла, чтобы сделать ссылку. Если же мы имеем файлы «site/1.htm» и «site/subdir/2.htm», то чтобы с первого сделать ссылку на второй, а со второго на первый, надо написать href =»subdir/2.htm» и href =»../1.htm» соответственно. Такие адреса называются относительными. Две точки означают «тот каталог что выше». Относительные адреса хороши тем, что когда мы переименовываем папку «site» или меняем хостинг их не нужно менять.
Но этим возможности тега <a> не исчерпываются. a — сокращенно от anchor — что значит якорь. С помощью тега <a> можно ставить в гипертекстовом документе якоря, или проще говоря закладки, позволяющие переходить в определённое место документа. Это особенно полезно, когда документ большой, и нужно быстро переходить в нём к нужному разделу. Для этого существует атрибут id.
Чтобы долго не объяснять снова приведу пример:
<html> <head> <title>Моя музыка</title> </head> <body> <h1> Содержание</h1> <a href="#part1"><h2>Часть 1</h2></a> <a href="#part2"><h2>Часть 2</h2></a> <a href="#part3"><h2>Часть 3</h2></a> <h1 id="part1">Часть 1</h1> <p> Много текста </p> <h1 id="part2">Часть 2</h1> <p>Много текста</p> <h1 id="part3"> Часть 3</h1> <p>Много текста</p> </body> </html>
Когда мы делаем гиперпереходы в пределах одной страницы, то в атрибуте href просто пишем знак («#») и название закладки (то что написано в атрибуте id). А когда делаем переход на закладку в другой странице, то сначала пишем адрес страницы, затем добавляем знак («#») и название закладки. Когда случайно делается переход на закладку, которой не существует, ничего страшного не происходит. Мы просто попадаем в начало страницы, как при обычном переходе.
Чаще страницы загружаются в том окне, где вы щёлкнули ссылку. Но мы можем выбрать место, где будут загружаться страницы. Для этого в теге <a> существует атрибут target. Он может принимать значения _blank, если нам нужно загружать страницу в новом окне, _self, если нам ничего менять не нужно (оно и так загружается в том окне где щёлкнули), _parent, если мы хотим забрать из окна фрейма и открыть страницу на всё окно.
Расширения HTM / HTML
Как описывают расширения файлов справки операционных систем ассоциированных типов файлов и приложений, чтобы они могли открыть и управлять веб-страниц для их полной функциональности. Например, XLS — это расширение для электронной таблицы Microsoft Excel. Это указывает операционной системе открывать Microsoft Excel при нажатии на файл XLS. HTM / HTML — это очередь для открытия файла в браузере и доступа в интернет.
Как только операционная система откроет тип файла, необходимый для расширений, программа автоматически запустит код. Если расширение сложнее, чем рассчитана на обработку операционной системой, например, в случае HTML и DOS, система выйдет из строя, поскольку нагрузка будет слишком большой для операционной системы. (Однако в современных системах ОС обычно выдаёт сообщение об ошибке, просто заявляя, что файл слишком большой, и отказывается его открывать.)
HTML очень функциональный и относительно простой в освоении . Это также гораздо более применимо к современному миру. Хотя основным отличием является больший размер расширения, чем HTM, это различие имеет множество последствий.
Например, HTML имеет лучшую безопасность, чем HTM. Хотя вы всё равно захотите узнать, как шифровать файлы, наличие этого уровня выше HTM действительно даёт небольшое повышение уровней защиты. Кроме того, поскольку HTML имеет больший размер расширения, он также может обрабатывать файлы большего размера, чем HTM. Это означает, что для вас более сложные и креативные сайты! Кроме того, теперь, когда вы можете интегрировать Java со своим HTML, вы заметите, что качество ваших веб-сайтов резко улучшилось.
Структура и основные элементы
Основным элементом HTML является тег. Тег это определенный текст заключенный в угловые скобки .
Большинство тегов парные, они имеют открывающий и закрывающий тег. Закрывающий тег отличается от открывающего добавлением слеша перед текстом.
Например:
Теги могут иметь атрибуты которым присваиваются значения (об этом чуть позже).
Теги могут быть вложенными друг в друга.
Например:
Редактор HTML
Теги прописываются в редакторе. Простейший пример редактора — блокнот. Но я советую пользоваться редактором Notepad++, скачать его можно на официальном сайте, устанавливается он в два клика.
Основное преимущество этого (да и других) редактора в том, что в нем есть подсветка синтаксиса. Это значит что ваш код будет выделяться определённым цветом. Данное действие упрощает написание кода и позволяет избежать ошибок.
В редакторе прописываются теги, а затем файл сохраняется с расширением .html. Посоле чего его можно открыть с помощью браузера.
Основные элементы web-страницы
Проста веб-страница состоит из «базового» набора тегов. Это следующие теги:
- — тег указывает что это HTML код.
- (голова — в переводе с английского) — тег содержащий техническую информацию, например заголовок страницы, подключаемы стили и скрипты, мета-информацию и так далее.
- (заголовок — в переводе с английского) — тег содержит заголовок HTML-документа который отображается во вкладке браузера.
- (тело — в переводе с английского) — «тело» или основное содержимое документа которое видит пользователь.
Все базовые теги имеют закрывающие теги и являются вложенными друг в друга.
Структура простого HTML документа
Давайте наберем в редакторе следующий код:
<html> <head> <title>Заголовок моей первой страницы (во вкладке браузера)</title> </head> <body> <h1>Заголовок страницы в браузере</h1> <p>Любой тест, обычно это Hello World!</p> </body> </html>
Затем сохраните файл с расширением .html, в моем случае это файл html-1.html. Если у вас появились проблемы, просто скачайте этот файл.
Откройте файл в браузере и посмотрите результат.
Рассмотрим основные элементы подробнее.
Элемент <html>
Корневой элемент веб-страницы. Все HTML-теги должны быть внутри него, иначе они не будут правильно обрабатываться браузером.
Помните, в начале статьи я писал что теги имеют атрибуты со значениями? Так вот, атрибут это определенное свойство тега имеющее значение. Атрибут со значением прописывается после тега.
Атрибуты элемента <html>.
Атрибут | Описание | Возможные значения |
---|---|---|
Указывает путь к кешу манифеста. | URL. |
Манифест (manifest) представляет из себя текстовый файл со списком ресурсов для кеширования. Я знаю, сейчас ничего не понятно. Про манифест можно нет запоминать. дальше я приведу более понятный пример.
Прописываются атрибуты так:
<html manifest = "URL">
, где:
- html — тег;
- manifest — атрибут;
- URL — значение атрибута.
Элемент <head>
Между тегами <head> … </head> заключается информация которую не видит пользователь, эта информация «служебная» или «техническая», называть ее можно как угодно, но по сути она нужна для:
- Роботов поисковых систем.
- Стилизации и расширения функциональности сайта.
- Указания, с помощью тега <title> заголовка документа в браузере.
Элемент <title>
Как я уже говорил, тег <title> используется для того, что бы указать название web-страницы которое будет отображаться в закладке браузера.
Что такое XHTML?
Есть много версий HTML. HTML 4 требует большей вычислительной мощности, чтобы взять среднюю HTML-страницу и отобразить ее согласованным и последовательным образом. Поэтому был представлен XHTML. XHTML расшифровывается как Extensible Hyper Text Markup Language. XHTML не расширяем. Он основан на XML. XML похож на HTML, но предназначен для описания данных. В отличие от тегов HTML, теги XML не определены заранее. Таким образом, программист может писать теги в соответствии с приложением.
Основная цель разработки XHTML заключалась в том, чтобы помочь программисту переходить от HTML к XML. XHTML — это описательный язык разметки, который работает аналогично HTML при хорошей организации данных. Первым типом документов в семействе XHTML является XHTML 1.0. XHTML больше похож на HTML 4.01. Это наклейка, чем HTML. Он предоставляет более точные стандарты и спецификации для веб-сайта, чтобы понимать данные и передавать их.
Все документы XHTML должны начинаться с объявления документов вверху. Все атрибуты и имена тегов должны быть написаны простыми буквами. Необходимо правильно вложить все теги. Значения атрибутов заключены в кавычки. Это несколько фактов, которые следует учитывать при написании файлов XHTML.
В целом, XHTML полезен для повышения вероятности совместимости веб-страниц с настоящими и будущими веб-браузерами и для точного отображения. XHTML упрощает обслуживание и форматирование в течение длительного периода времени. Хотя XHTML предоставляет более точные стандарты для понимания данных; один недостаток в том, что его труднее отлаживать.
Немного истории
Работа над XHTML 2.0 началась вскоре после публикации XHTML 1.1 в качестве рекомендации в 2001 году. Первый черновой вариант XHTML 2.0 был опубликован в 2002 г., но значительная часть документа была в ненормативном и незавершенном состоянии (а кое-что осталось до сих пор). К 2004 году у некоторых видных деятелей отрасли – разработчиков браузеров, дизайнеров, web-разработчиков и владельцев контента – возросло недовольство дирекцией рабочей группы XHTML 2.0. Ссылаясь на закрытый характер работы W3C, они решили основать и разрабатывать свой собственный стандарт.
Итак, в 2004 г. была сформирована независимая коалиция, названная WHATWG (Web Hypertext Application Technology Working Group). Группа начала работу над спецификацией, названной Web Applications 1.0. В апреле 2007 года W3C проголосовало в пользу предложения рассмотреть спецификацию группы. Члены WHATWG начали работать в рамках W3C как группа разработчиков HTML и продолжили работу над своим проектом, который был переименован в HTML 5. Таким образом, черновик HTML 5 должен однажды стать рекомендацией W3C наряду с XHTML 2.0 (хотя этот день еще очень далек, и ).