HTML5とは、一般に、モダンな(古っぽくない)ウェブ技術の総称である。
概要
もともとHTML5という呼称は通称だったが、のちに正式な仕様書名となっていた。しかし同仕様はその後、HTML Living Standardに改称されたが、W3CがHTML 5という名称の仕様書を公開するなどの混乱があり、最終的には2019年にHTML Living Standardへ統合された。その経緯やHTML仕様自体についてはHTML Living Standardの記事を参照。
今日HTML5という呼称は、Web 2.0のように新しい仕様や新しい技術を指して曖昧に用いられたり、HTML5プレーヤーのように「ブラウザプラグインに依存しないRIA」という意味で使われたりもする。ニコニコ動画では2016年になり、従来のAdobe Flash Playerに依存したニコニコプレーヤーからHTML5プレーヤーへの切り替えを進めている。
つまりHTML5は、大きく分けて以下の3つの意味を持つ。
- HTMLの最新仕様であるHTML Living Standardの旧称
- W3Cの仕様書の名前であるHTML 5 (W3CのHTML 5.2公開時までで廃止)
- モダンな (古っぽくない) ウェブ技術を総称する俗称
この記事では、2016年現在において比較的新しい仕様をいくつか取り上げる。
HTML 4.01 や XHTML 1.1 との違い
HTML 4.01などの旧来のHTML仕様は、SGMLという言語の一種(SGMLと互換性がある)として作られたが、SGMLとして構文解析を行うブラウザはなかった。HTML標準はXMLなどと同じく、SGMLの派生(SGMLと互換性がない)としてHTML構文を定義した。[1]HTML標準では、XMLと互換性のある構文としてXHTML構文も定義している。
HTML標準の定義されている要素(タグ)や属性は、HTML 4.01、およびXHTML 1.1を引き継いでおり、策定が中止されたXHTML 2.0の構想も一部含む。
またHTML標準は、要素(タグ)や属性の意味を定義するだけでなく、従来別の仕様だった「HTMLにおけるDOM」も定義している。さらにWeb Workersというバックグラウンド処理を行うAPIなども含まれており、全体としてかなり大きな仕様書となった。
HTML Living Standardに含まれるもの
動画や音楽の再生
動画及び音楽再生は、従来のHTMLでは不可能でAdobe Flash PlayerやWindows Silverlight等のブラウザプラグインと呼ばれるソフトウェアが必要であった。だが、このプラグインはセキュリティ問題の温床となりやすく、動作が重いという欠点があった。この欠点を解消した機能と言える。
動画再生は上記のAdobe Flash Playerで行われる場合が多かったが、iPhoneのAdobe Flash Player未対応(この未対応に関して当時のAppleの社長だったスティーブ・ジョブズが「Flashは有害である」と発言した)により、一気にブラウザプラグインに依存しない動画再生への移行が進んだ。
video要素(<video>タグ)やaudio要素が用いられる。
2D描画コンテキスト (Canvas 2D)
その名の通り2Dで描くためのAPI。これによって、従来Java AppletやAdobe Flash Playerを作っていたお絵かきBBSのペイントツールやお絵かきチャットが、プラグイン不要で簡単に実装できるようになった。RPGツクールMVもこの機能を用いている。
canvas要素が用いられる。
Web Storage
Cookieによく似ているが大容量のため、様々な事が出来る。
HTML Living Standard以外の標準仕様
WebGL[2]
3Dを表示するためのAPIであるOpenGLをウェブ上でも使えるようにした物。これによりウェブ上での3D表現が大幅に向上し、ウェブゲーム開発の幅が一気に広がった。UnityやUnreal Engine 4がこのWebGL出力モードを搭載している。また、RPGツクールMVもこの機能を用いている。
canvas要素が用いられる。
File API[3]
文字通り、ファイル(の中身)を操作するためのAPI。ユーザーが選択したローカル上のファイルをブラウザに取り込み、サーバーと通信することなく扱うことが出来る。
クリップボードの操作[4]
ユーザーがクリックしたタイミングなどで任意のデータをクリップボードへコピーしたり、切り取り、コピー、貼り付けを監視したり出来る。
CSS3 / CSS4 について
「CSS3」や「CSS4」と呼べる仕様はないが、HTML5と似たように、比較的新しいCSSの仕様書や技術を指した総称として用いられているようだ。
CSS 2.1は巨大な仕様であったため、勧告までに非常に長い時間がかかった。そのためCSS 2.1より後の仕様書は、機能ごとに分けて策定作業が進められることになった。CSS 2.1に含まれていた機能の後継仕様は「CSS Color Module Level 3」のように「Level 3」から番号が振られているが、CSS 2.1に存在しなかった機能の仕様書は「Level 1」から番号付けされる。
たとえば「CSS Flexible Box Layout Module Level 1」は、俗に「CSS3 Flexbox」と呼称されている。CSS以外でも利用されるため、CSSを冠しなくなった「Selectors Level 3」「Selectors Level 4」は、俗に「CSS3セレクタ」「CSS4セレクタ」と呼ばれることがある。
なお、CSS関連についてはW3Cで策定が進められている仕様が多い。
ハイブリットアプリケーション
HTML(とCSSとJavaScript)の機能を用いて作ったPCやスマホ上で動くアプリケーションの事。従来のHTMLやウェブアプリケーションの知識を流用でき、ウェブ上でもPCやスマホ上でも動かさせるマルチプラットフォームのアプリケーションを比較的簡単に制作できる利点がある。RPGツクールMVで製作したゲームがこれにあたる。
関連動画
外部リンク
関連項目
脚注
- *このHTML構文では、
<img src="url" alt="" />
のようなXMLと互換性のある書き方も可能となっている。 - *Khronos Groupで策定が進められている。
- *W3Cで策定が進められている。
- *W3Cで策定が進められている。
親記事
子記事
- なし
兄弟記事
- なし
- 6
- 0pt