HTML5とは何か(狭義・広義)
HTML5 は、WHATWG(Apple、Mozilla、Opera等のベンダー)および World Wide Web Consortium(W3C) が HTML4 に代わる次世代の HTML として策定を進めている HTML 仕様です。
HTML5が生まれた理由(歴史的な背景)
2004年6月W3Cのワークショップにて 、ブラウザ開発各社は、Webアプリが台頭しており「HTMLの拡張」を提案しました。
しかし「HTML」の規格を策定しているW3Cは、HTMLは段階を経てXMLに移行する予定だったためブラウザ開発各社と対立しました。
そこで、Apple、Mozilla、Opera等のベンダーは新しくWHATWGを立ち上げました。
ベンダーが関わった仕様は開発者から評価を得て、W3Cも一向に進まない「XMLへの移行」を諦め、2007年よりHTML5の策定をWHATWGと協力して始めました。
年代 | HTML | XML | XHTML | CSS |
---|---|---|---|---|
1998 | HTML4.0仕様改訂 | XML1.0勧告 | CSS2勧告 | |
1999 | HTML4.01勧告 | |||
2000 | XHTML1.0勧告 | |||
XHTMLBasic勧告 | ||||
2001 | XHTML1.1勧告 | |||
2004 | XML1.1勧告 | XHTML2.0草案 | ||
2008 | HTML5草案 | CSS3草案 | ||
2009 | 活動停止 |
狭義のHTML5と広義のHTML5
HTML5では、今まで開発者が苦労していたところの改善、よく使う機能などを盛り込みました。また、プラグインなどを使って機能としてバラバラに提供されていたものをAPIとして導入しました。
簡単には次のような機能が強化・拡張されました。
- グラフィック機能の強化(Canvas / SVG / WebGL)
- マルチメディア機能の強化(Audio / Video)
- オフライン機能の強化(Web Storage / IndexedDB)
- キャッシュ機能の強化(Application Cache)
- マルチスレッド対応(Web Workers)
- 双方向通信機能の強化(WebSocket)
- ローカルファイルの操作(File API)
- 位置情報の取得(Geolocation API)
- input要素のtype追加(email / date / range / serach / tel / color / number)
これらの技術の中には狭義にはHTML5とは呼べないものもあります。
正確に分類すると次のようになります。
これらすべてをHTML5と呼ぶこともある
一般的にHTML5と呼ばれる範囲(広義のHTML5)
W3CのHTML5仕様
(狭義のHTML5)
廃止予定の要素
「HTML5」では次の要素は廃止予定となっています。
廃止予定の要素には代価方法が提案されています。
要素 | 説明 | 代価方法 |
---|---|---|
acronym | 頭字語 | abbr |
applet | Javaアプレットの埋め込み | embed、object |
basefont | ページの基準フォントサイズ | スタイルシート |
bgsound | BGMの自動再生 | audio |
big | フォントを大きく表示 | スタイルシート |
blink | 点滅して表示 | スタイルシート |
center | 要素の左右中央揃え | スタイルシート |
dir | ディレクトリ型リスト | ul |
font | フォント装飾(色・サイズ・種類) | スタイルシート |
frame | フレームの定義 | iframe、スタイルシート |
frameset | フレーム(frame要素)の構成 | iframe、スタイルシート |
isindex | キーワード検索入力欄の埋め込み | form と テキストフィールド |
listing | ソースをそのまま表示(タグは解釈) | pre と code |
marquee | スクロールして表示 | スタイルシート |
multicol | cols属性で指定した段数に段組 | スタイルシート |
nextid | a要素で自動的にアンカーを生成 | GUID |
nobr | 改行されずに表示 | スタイルシート |
noembed | embed要素に未対応向け代替内容 | embed |
noframes | フレーム未対応ユーザー向けの代替テキスト | iframe、スタイルシート |
plaintext | ソースをそのまま表示 | MIMEタイプに"text/plain" |
rb | ルビ(ふりがな)を付ける | ruby |
spacer | スペースを挿入 | スタイルシート |
strike | テキストに取消線を引く | del、s |
tt | テキストを等幅フォントにする | スタイルシート |
xmp | ソースをそのまま表示 | code(特殊文字はエスケープ) |
なお、「s」要素「u」要素も廃止予定でしたが、次のように意味合いが変更されて残りました。
要素名 | HTML4.01までの使い方 | HTML5での変更点 |
---|---|---|
s | テキストに取消線を引く | 古くなった情報や関連性のない情報に使う。削除には del要素を使うこと |
u | テキストに下線を引く | はっきり発音されない文字やミススペルに使う、mark要素を使うこと |
※このエントリーに書かれている内容は、今後HTML5の仕様の変更により推奨される記述方法が変わる可能性があります。
オススメ書籍
HTML5、CSS3、JavaScript等の学習に役立つ書籍を紹介します。