HTML 5
<!DOCTYPE html>
22 января на
w3.org был опубликован черновик (working draft) новой спецификации HTML 5.
Tim Berners-Lee, автор первой версии языка и глава консорциума:
HTML is of course a very important standard. I am glad to see that the community of developers, including browser vendors, is working together to create the best possible path for the Web.
Синтаксис языка в значительной степени совместим как с HTML 4, так и c XHTML 1. Похоже, что религиозные войны между сторонниками разных стандартов скоро станут неактуальными :)
Новые элементы:
Очень много новых тегов. При чем, сделан огромный шаг в сторону семантики кода. Кроме того, что введены новые элементы, многим старым и редко используемым элементам (dt, dd, legend) придано новое значение.
section - секция (раздел) документа. Может использоваться вместе с элементами h1-h6 для построения структуры документа
article - независимый фрагмент содержимого документа
aside - фрагмент содержимого, лишь незначительно связаный с остальным контентом
header - заголовок секции
footer - "подвал" (колонтитул), информация об авторе, copyright.
nav - секция для навигации (меню)
dialog - раздел для диалога (интервью, можно сказать). Внутри используются элементы, ранее служившие только для списка определений (
dl) - вопросы помещаются в
dt, ответы -
dd.
figure - подписи для медиа-содержания (видео, картинки и т.п.). Т.е. медиа-элемент помещается в
figure, туда же помещается подпись, заключенная в
legend
audio и
video - да, да... время текстовых браузеров давно прошло :) Мультимедиа-теги включают пачку атрибутов (
src,
autoplay,
start,
loopstart,
loopend,
end,
playcount,
controls) позволяющих контролировать их содержимое
embed - а раньше использовать этот тег не рекомендовалось :) Предназначен, если кто не знает для внедрения объектов для различных плагинов браузера (Flash в частности)
m - некая "отметка" в тексте, т.е. отмеченный или "подсвеченый" текст. Не совсем понятен смысл элемента и похоже не одному мне - в спецификации сказано что "данный раздел может быть изменён или удалён". Так что будем ждать...
meter - обозначение каких-либо размеров. Интересен набор специальных атрибутов:
value,
min,
low,
high,
max,
optimum, без которых, кстати, использовать его не рекомендовано.
time - дата и время. Вот такой пример использования:
<time datetime="2008-01-01">С новым годом!</time>
canvas - холст для рисования растровой графики. Пока описана (и приведён
пример) создания двумерных изображений, но в будущих версиях спецификации планируется описание 3d-графики. Описаны DOM-интерфейсы, включающие методы для работы с различными геометрическими фигурами, цветами, стилями, прозрачностью, тенями, градиентами для 2d-контекста.
command - некая "комманда". Может быть трех типов (атрибут
type): "
command", "
checkbox", or "
radio". Примеров в этом разделе документа пока нет, поэтому обойдусь без лишних предположений.
datagrid -
интерактивное, представление данных ввиде таблицы или дерева. За подробностями
туда же.
details - некая более подробная (детальная) информация, которая может быть предоставлена пользователю.
datalist - комбобокс. Пример из документа:
datatemplate - обозначает некий "шаблон данных". Контекст использования: корень XML-документа, мета-данные. Содержит элементы
rule
rule и
nest - некие правила для шаблона данных
datatemplate
event-source - перехват событий при работе с сервером
output (
WF2) - вспомогательный элемент формы, используемый для вывода.
Подробнее...
progress - прогресс-бар обозначающий состояние процесса загрузки данных.
Кроме того претерпели изменения элементы:
a, address, b, hr, i, label, menu, small, strong.
Убраны элементы (т.к. на дворе 21 век и CSS3 на носу):
basefont, big, center, font, s, strike, tt, u. Вообщем тех, кто придерживается XHTML это изменение не коснётся (в XHTML этих элементов давно нет).
Убраны элементы (т.к. всё равно никто толком не использует):
acronym, applet, isindex, dir. Вместо них предлогается использовать всё те же
abbr, object, ul.
Не рекомендуются элементы:
frameset, frame, noframe. А вот
iframe - пожалуйста.
Кодировки.
вместо длинной и надоевшей записи:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> предлагается использовать мета-тег с атрибутом charset:
Расширенные возможности для работы с формами
или Web Forms 2.0
Раздел описания форм в спецификации вообще пуст. Вместо него - лишь ссылки на
WF2 (прототип HTML 5).
В частности, в числе нововведений - новые типы
input -
datetime, datetime-local, date, month, week, time, number, range, email, url. Не может не радовать, что вскоре уже не придётся писать тонны js-кода для проверки форм перед отправкой :)
JS - Ну очень радостные нововведения.
никакой революции. Просто многие вещи наконец-то вошли в стандарт.
getElementsByClassName() - без комментриев (дождались наконец-то :)
innerHTML - теперь стандарт
getSelection() - теперь стандарт (возвращает объект выделения)
designMode и
execCommand() - теперь стандарт (для WISYWYG-редактирования)
Предупреждение.
Это всего лишь очередной взгляд в светлое будущее, не более. Документ ещё сырой, и неизвестно когда выйдет окончательная версия. И уж тем более неизвестно, когда и насколько всё это счастье будет поддерживаться браузерами. Напомню, что возвращение к HTML (от XHTML) было объявляено W3C в марте прошлого года.
Так что как обычно - будем ждать...
Источники:
Что ещё почитать: