図 HTML5はWebコンテンツとWebブラウザの間のインタフェースの規定へと進化 HTML5はスクリプトがWebページを操作したり,Webブラウザの機能を利用したりするためのAPIを規定する。
図 HTML5はWebコンテンツとWebブラウザの間のインタフェースの規定へと進化 HTML5はスクリプトがWebページを操作したり,Webブラウザの機能を利用したりするためのAPIを規定する。
[画像のクリックで拡大表示]

 HTML5は,W3Cが2012年を目標に規格化作業を進めている次期バージョンのHTMLである。仕様の一部は,FirefoxやGoogle Chrome,Opera,Safariなど,最新のWebブラウザが取り入れ始めている。

 HTML5では,WebブラウザがJavaScriptに対して提供する機能と利用のしかたを,新たにAPIとして規定する。この点が現在のHTML4と大きく違う点である(図)。

 Webブラウザは,あたかもOSのようにJavaScriptに機能を提供する。JavaScriptは,HTML5のAPIが用意する「メソッド」を使ってその機能を利用する。例えば,JavaScriptがWebブラウザのパーサーやレンダラを操作してWebブラウザの画面上に静止画を描くといった,描画ソフトと同じことができる。このようなことは,従来のJavaScriptでは実現不可能だった。例えば今までのJavaScriptは,マウスの軌跡は検出できたが,Webブラウザの画面上に線を描画できなかった。もし,そのようなことができるWebページがあるとすると,それはFlash Playerなどのプラグイン・ソフトやActiveXコントロールを使っている。HTML5なら,こうしたソフトは不要になる。

 HTML5では,従来からあるWebコンテンツの記述ルールも,画像や動画,音声の取り扱いを中心に強化している。HTMLドキュメントの中で画像を描画する領域を指定する「canvas要素」を追加しているのは,その一つ。canvas要素によって確保された領域の上で,JavaScriptは描画用APIを使って画像を描く。

 このほかHTML5では,動画や音声をWebブラウザの画面に張り込むための「video要素」と「audio要素」を追加している。HTML4までにあった静止画を張り込むimg要素の動画,音声版といえる。video要素,audio要素を使って張り込んだ動画や音声は,JavaScriptから再生や停止,早送りといった制御ができるようになっている。audio要素やvideo要素に「controls」という属性を付けておくと,JavaScriptがAPIを使って動画や音声の再生を制御できる。今まで動画や音声は,プラグイン・ソフトやActiveXコントロールを追加しなければ再生できなかった。これが,Webブラウザだけで再生できるようになる。