HTML 5 — обзор грядущей новой спецификации
Все вы наверняка слышали, что сейчас идет работа над новой спецификацией HTML, а именно ее пятой версией. Впервые ее черновики стали доступны широкой общественности в конце января 2008. С тех пор работа над официальным релизом продолжается с удвоенным рвением, однако официального выхода ждать еще пару лет :
Однако, многие разработчики браузеров начинают внедрять поддержку некоторых вещей из HTML5 уже сейчас, так что, думаю, будет полезно ознакомиться с нововведениями. В статье мы рассмотрим новшества и изменения HTML5, и посмотрим, что из этого уже работает в новейших браузерах.
Новый доктайп и способ указания кодировки в HTML5
В отличие от существующих громоздких доктайпов, объявление 5-ой версии кратко и лаконично:
<!doctype html> |
Это связано с тем, что HTML5 больше не является частью SGML, теперь это самостоятельный язык разметки.
Объявление кодировки в HTML5 так же притерпело изменения. Выглядит оно теперь вот так:
<meta charset="UTF-8"> |
Новая структура в HTML5
HTML5 подразумевает, что страница всегда имеет структуру, сравнимую со структурой книг или XML документов. Обычно, у веб-страницы есть навигация, основной контент, второстепенный контент (чаще в сайдбаре), заголовки, футеры и так далее. Для каждого такого элемента в HTML5 есть свои теги:
<section> — для каких-то частей страницы;
<header> — заголовок страницы;
<footer> — футер страницы;
<nav> — навигация;
<article> — статья или основной контент;
<aside> — дополнительный контент;
<figure> — определяет картинку, сопровождающую статью.
Новые строчные элементы в HTML5
Эти элементы определяют основные семантические объекты страницы:
<mark> — указывает на элемент, который взаимодействует с какой-то функцией;
<time> — выделяет дату или время;
<meter> — какие-либо метрические данные или характеристики;
<progress> — показывает процесс выполнения задачи (функции, например).
Новые типы полей форм в HTML5
HTML5 по-прежнему поддерживает все основные типы полей форм, добавив при этом и некоторые новые:
datetime
datetime-local
date
month
week
time
number
range
email
url
При этом из HTML5 исчезли некоторые теги
В новой спецификации больше нет некоторых тегов — некоторые из них сами по себе уже устарели и мало, кто их использует. Но, были так же удалены и некоторые довольно популярные теги. Вот полный список:
acronym
applet
basefont
big
center
dir
font
frame
frameset
isindex
noframes
noscript
s
strike
tt
u
HTML 5 test позволит проверить поддержку браузером новых веб-стандартов
После того как стало очевидно, что HTML5 - это технология, которая будет определять развитие Интернета в ближайшие несколько лет, появление специальных бенчмарков, которые смогут показывать совместимость браузеров с новым стандартом, было лишь вопросом времени.
В отличие от технических тестов, которые не каждый обычный пользователь сможет самостоятельно запустить и результат в которых представлен непонятной абракадаброй, новый HTML5 test представляет итоги в виде понятной и простой оценки. При этом, в отличие от того же ACID 3, где кроме баллов нет никакой дополнительной информации, в HTML5 test пользователь видит, сколько баллов было набрано в каждой подкатегории и какие возможности нового стандарта браузер еще не поддерживает или поддерживает недостаточно.
Проверка занимает всего несколько секунд, и пользователь увидит возможности своего браузера в 300-балльной системе. Похоже, что на текущий момент ни один браузер не поддерживает все возможности HTML5 полностью, поскольку даже самые последние сборки набирают лишь чуть больше 200 баллов.
В каждом подразделе браузер может также заработать бонусные баллы, например за поддержку дополнительных видео- или аудиокодеков (работа с ними не является частью стандарта HTML5).
Новое в CSS 3: background- clip: text
Пока вебмастера спорят о браузерах и стандартах, WebKit занимается делом :) На этой неделе разработчики CSS3 представили новое свойство, названное background-clip:text, которое позволяет наложить любой фон/изображение на текст, границы и даже тень, при этом не перекрывая их, а реализуя нечто похожее на функцию наложения маски в Photoshop.
Код выглядит так:
< style> |
результат