HTML 5

Анне Ван Кестерен опубликовал описание ключевых отличий HTML 5 от HTML 4. Среди приятных мелочей:

[The new element] article represents an independent piece of content of a document, such as a blog entry or newspaper article.

The a and area elements have a new attribute called ping that specifies a space separated list of URIs which have to be pinged when the hyperlink is followed.

A new autofocus attribute can be specified on the input (except when the type attribute is hidden), select, textarea and button elements. It provides a declarative way to focus a form control during page load.

The new required attribute applies to input […] and textarea. It indicates that the user has to fill in a value in order to submit the form.

You can now disable an entire fieldset by using the disabled attribute on it.

The input element has a bunch of other new attributes to specify contraints: autocomplete, min, max, pattern and step.

The style element has a new scoped attribute which can be used to enable scoped style sheets. Style rules within such a style element only apply to the local tree.

The draggable attribute [on any element] can be used together with the new drag & drop API.

The menu element is redefined to be useful for actual menus.

HTML5 has none of the presentational attributes that were in HTML4 (including cellpadding and cellspacing).

getElementsByClassName() to select elements by their class name.

innerHTML as an easy way to parse and serialize an HTML or XML document. This attribute was previously only available on HTMLElement in web browsers and not part of any standard.

activeElement and hasFocus to determine which element is currently focused and whether the Document has focus respectively.

classList is a convenient accessor for className and the object it returns exposes methods, such as has(), add(), remove() and toggle().

Что ж, ждём имплементации. Думаю, в Опере 9.5 многое из этого будет реализовано. Какие-то из фич, связанных с формами, кажется, уже есть.

Я только не понял, за что выкинули элемент s. Написал Ван Кестерену письмо с просьбой по возможности оставить его.

Дальше
13 комментариев
MemoryFull 2007

А зачем нужен тег <s> и <strike>, если есть <del>?

Илья Бирман 2007

Впервые слышу про ####.

Centaur 2007

%%<s>%% и %%<strike>%% — презентационные элементы (притом один из них избыточный). Унести описание представления из элементов в CSS решили ещё в HTML 4, пометили %%<s>%%, %%<strike>%% и вместе с ними %%<u>%% как Deprecated и оставили только в схеме Transitional. Тогда же добавили семантический элемент %%<del>%%, который обычно отображается %%text-decoration: line-through%%, но может (и в какой-то версии IE так и было) не отображаться вовсе (%%display: none%%).

Забавно, что элемент %%<s>%% появился только в HTML 4, уже сразу как deprecated.

BOLK 2007

DEL — старый тег, если не путаю, был ещё в HTML 3.20. Означает «данная информация устарела» или «была вычеркнута», используется в рецензировании и правках. Там даже есть атрибут, который позволяет указать дату правки. Есть противоположный элемент INS. И тот и другой по назначению используются крайне редко, обычно о них вспоминают, когда у верстальщика теги кончаются. Знаешь, сколько в HTML ещё таких «редких» тегов? :)) VAR, XMP, KBD, SAMP и т. д.

Илья Бирман 2007

А, про ####/#### я знал ;-) Просто #### сам по себе не вызывал никаких ассоциаций.

Семантика у #### и #### разная, и если я останусь без ####, то я скорее напишу ####, чем ####.

Про редкие теги я знаю.

Юрий 2007

Если required будет применим только к input и textarea, то все остальные элементы ввода (radio, select, ..) нужно будет по старинке проверять скриптом.
Смысл?

Юрий 2007

PS. насчет radio я гоню, конечно же.

Илья Бирман 2007

Да и насчёт select, надо сказать, тоже :-)

gray 2007

Когда-то рисовал смешную штуку — определение различий между версиями текста для небольшого Wiki-движка. И, естественно, встал вопрос — как эти различия показать? Традиционный подход — показать две колонки с разными версиями, но это для исходников хорошо.

В общем, вспомнил про теги %%<ins>%% и %%<del>%%, оформил их CSS’ом, и получилось то, что надо :)

А по теме сообщения — очень хочется дождаться реализации этого самого HTML5. И, конечно же, CSS3.

an9eldust 2007

Семантика у <del> и <s> разная

Можно не стесняться, пойти дальше и сказать, что у <s> семантики нет вовсе никакой. То есть — да, ровно столько же, сколько у

<span class=«s»>.

Так что ничего не остается как поздравить вас с тем, что вы верстаете «на дивах».

Илья Бирман 2007

Если вы не видите семантики у ####, это ещё не повод меня поздравлять с какой-то хернёй бессмысленной.

an9eldust 2007

Прекрасно, приведите, пожалуйста, пример случая, в котором вам позарез нужно было бы применить тег <s>.

Виктор 2007

HTML 5 будет таким же строгим как XHTML? Или так же будет допускать Tag soup?

Илья Бирман 2007

HTML 5 не будет XML’ом. Для любителей XML’а будет XHTML 5 — точно такой же, но строгий.

Я не знаю, что конкретно вы в данный момент понимаете под тег-супом. Независимо от того, что написано в документе, браузер будет его пытаться «хоть как-нибудь да отобразить», в этом смысле тег-суп, конечно, будет допустим; ошибок парсера браузер пользователю показывать не будет, к счастью.

ichik 2007

Илья, у меня вопрос любопытствующего. Я тоже все время считал <s> исключительно оформительским тегом без семантики.
Поясните, пожалуйста, какую семантическую нагрузку может нести <s>.
В спецификацию я еще раз на всякий случай, естественно, заглянул: http://www.w3.org/TR/html401/present/graphics.html#edef-S

Илья Бирман 2007

Семантика прекрасно описана у Лебедева: Неформальная типографика.

alshur 2007

!!Какие-то из фич, связанных с формами, кажется, уже есть.!!
Ага. Тот же required, например.
Ссылка по теме: http://htmlcoder.visions.ru/HTML/?23

Сергей 2007

Тип ввода email, date и time — это реально то, о чем я мечтал много лет. А вот «новый атрибут charset» у тега meta — это, я считаю, профанация самой идеи метаданных. Уж лучше бы ему быть в теге html.
А если тег strong будет означать только важность, а тег b — только жирность, то мы скоро увидим чудовищный код наподобие «<strong><b>пластиковые окна</b></strong>».

Надеюсь, появление странного атрибута ping наконец позволит вам, Илья, убрать с вашего сайта это ткод, коверкающий все ссылки.

Vitaly Harisov 2007

Для зачёркивания текста чудесно подходит <del>, но никак не <s>, который правильно deprecated.

Илья Бирман 2007

Вы не правы; впрочем я уже об этом говорил выше.

Главное, что люди в W3C меня поняли.

Мои книги