新しいHTML5勧告候補(2013年8月版)で目についたところ
先日、HTML5の新しい勧告候補が公開されました。今更ですが、目についた変更点を挙げます。
要素の追加と削除
data要素
data要素は、要素の中身に通常のコンテンツを、value属性にコンピューターが読み取れる形式のコンテンツを、記述する要素です。
2013年8月版の勧告候補の中でも、Common idiomsの会話の例にdata要素を使ったマークアップの例が出ています。
<p> <data value="1319898155">14:22</data> <b>egof</b> I'm not that nerdy, I've only seen 30% of the star trek episodes <p> <data value="1319898192">14:23</data> <b>kaj</b> if you know what percentage of the star trek episodes you have seen, you are inarguably nerdy <p> <data value="1319898200">14:23</data> <b>egof</b> it's unarguably <p> <data value="1319898228">14:23</data> <i>* kaj blinks</i> <p> <data value="1319898260">14:24</data> <b>kaj</b> you are not helping your case
time要素ではUNIX時間を設定できないため、かわりにdata要素を使っているそうです。
先ほどの例はtime要素を使わない必然性があるのか疑問ですが、Mozilla Hacks(日本語訳)にもう少しわかりやすい例がありました。data要素の中身にユーザーの名前、value要素にユーザーIDを指定し、DOM APIを使ってユーザーIDを取り出しています(おそらく)。
<data id="user" value="humphd">David Humphrey</data> document.getElementById("user").value; // "humphd"
要素のカテゴリの追加
- フォームに「Reassociateable elements」カテゴリが新設されました。
- 「Scrpit-supporting elements」カテゴリが新設されました。
Reassociateable elementsはform属性を使って、自分が属するフォームを設定できる要素です。具体的には次の要素になります。
- fieldset
- label
- input
- button
- textarea
- select
- keygen
- output
- object
また、「Scrpit-supporting elements」カテゴリが新設されました。このカテゴリにはscript要素のみが属します(HTML 5.1の草案ではtemplate要素も含まれています)。単にカテゴリが増えただけではなくて、いくつかの要素の内容モデルが更新されています。要素の一覧(non-normative)を見ると、次の要素にScript-supporting elementsを置けるようになりました。
- dl
- ol
- ul
- table
- colgroup
- thead
- tbody
- tfoot
- tr
- optgroup
HTML5の段階ではあまりメリットを感じませんが、template要素が使えるようになると面白くなりそうです。
そのほか
article要素のとsection要素の使い分けに関する節(non-normative)が追加されました。が、「場合によるよ」という内容です。
main要素の追加、hgroup要素の削除にともなってCommon idioms without dedicated elementsの1つ目の例が全面的に変わりました。2012年12月版の勧告候補では「The main part of the content」(コンテンツの主要な部分)でしたが、2013年8月版の勧告候補では「Subheadings, subtitles, alternative titles and taglines」(サブ見出し、サブタイトル、代替タイトルおよびキャッチフレーズ)になりました。
まとめ
前回の勧告候補と今回の勧告候補の差分を見ると、場所によってはかなり変更されていました。2013年8月版の勧告候補公開後も、すでにText Track APIが若干変更されるなど、まだしばらくはHTML5仕様の動向に注意が必要かもしれません。