HTML5が廃止されました
こんにちは。WEB担当のまるたにです。今更かもしれませんが、HTML5が2021年1月28日に廃止されました。
/
えっ!?
\
いや、HTML6になる日が来るのかな~なんて思ったことがありましたがまさかの廃止wいつのまに!?でもそうそうそんなに変わらないでしょ~と本を読んでみたところ。
・・・・・・・・。
う~ん、これは今いる担当の利用者さま、新規で来る利用者さまに新たに説明しなきゃいけないかな、なんて・・・。
・・・(´;ω;`)
HTML5とは何ですか
HTML(Hyper Text Markap Language)はマークアップ言語です。
Markap=意味づけ
「今日のお知らせ」=大見出し
<h1>今日のお知らせ</h1>
<h1></h1> ←タグを書く=マークアップするという意味ですね。
HTMLとCSSのバージョン
HTML4.01 古いが安定をしている
XHTML1.0 htmlとxmlの特徴を合わせたwebページを作るための言語。プログラムとの相性が良い。
HTML5 多くの機能が追加している。
CSS2.1 HTML4.01と同じくらいの時期
CSS3 HTML5と同じくらいの時期
W3CとHTML5の関係性
そもそも何故廃止になったのですか?って話なんですが何ともややこしい感じでした!
つまり、
あなたたち仲良くしろよ!!!!って感じの内容でしたw
コピペで引用します。→
WWW(ワールドワイドウェブ)の標準化団体であるW3C。正式名所はWorld Wide Web Consortium。
名前の通りWorld Wide Webの標準を策定している国際的な機関でティム・バーナーズ=リーという初めてWebサイトを作った人が設立した組織です。このW3CがHTMLだけでなく、HTTPやCSS、DOMといったWebサイトに関わるものの仕様を決めています。つまり「Webサイトとは何か」を決めている組織ということですね。そしてこのW3CがHTML5を10年前ほど前に発表しました。1本目のドラフトを2008年に出し最終ドラフトになったのが2011年。この時期に「HTML5を使えばWebブラウザで何でも出来るぞ」という特集が沢山組まれました。そして2014年10月に正式勧告。そのあとHTML 5.1, HTML 5.2, HTML 5.3と勧告やドラフトが発表され、2021年1月28日にすべて廃止になりました。HTML6をW3Cが発表したという話では無く、W3Cが勧告したHTMLの規格が全部廃止になったという話です。
WHATWGというグループも存在します。
WHATWG??
2004年にApple・Mozilla・Operaの3社によって設立されたWHATWG。読み方はワットウィージー or ワットウィグ or ワットダブリュージーなど。
この組織は「W3Cは現場のこと全然わかってない。HTMLを改善する気配が全然ない上に、XHTMLとかいうよくわからない規格をつくろうとしてる。現場のことわかってるワシらで新しいHTMLをつくるぞ」 というW3CのHTMLに対する関心の低さへの懸念やWeb開発者の要望を無視しているのではという不満を解消することを目的に設立されました。実はこのWHATWGがW3Cに「HTMLの改善をしろ」と圧力を掛け生まれたのが、HTML5。
Webで力を付けた企業が集まって、独自の機能を自分たちが作っているブラウザに組み込んで外堀を埋めつつ、新しいHTMLをW3Cに認めさせてHTML5が生まれました。もちろんW3C側も無条件で認めたわけではありません。Webの標準となるようなHTMLにするためW3Cの標準化プロセスに従いつつWHATWGとのすり合わせを行い、ようやくHTML5としてまとまってドラフトとして発表されました。そしてこのHTML5が生まれたことで、それまでのWebでよく使われていた Adobe Flash、Java Applet、Microsoft Silverlight は廃れていきました。
*
・・・派閥争いですか?
人間関係のしがらみと同じ的な
HTML5ができてW3CとWHATWGは仲良くできるかなと思いきや、方向性の違いによって2012年にまたHTMLが分裂します。勧告としてドキュメントをきちんと整備してから発行したいW3Cと、継続して順次アップデートを行い続けたいWHATWG。それぞれが別々にHTMLを策定することになりました。WHATWGのHTMLのスナップショットがW3Cという構造になってくれればWebの開発者としてはわかりやすかったのですが、時が流れるにつれW3CがWHATWGのHTMLをベースにしつつも独自の要素を付け足すなどして、それぞれのHTMLが徐々に乖離していきました。つまり、「W3CのHTML5」と「WHATWGのHTML」の2つがHTMLの標準として併存する時代。HTMLの仕様書が2つあってそれぞれの中身が細かいところで微妙に食い違っているわけです。開発を行う上で非常に厄介ですね。当時はブラウザごとに参照する仕様が異なり、Internet ExplorerはW3Cの仕様を元に、Chrome、Firefox、SafariはWHATWGの仕様に沿って開発されていました。
*
え、WEBの世界も人間関係のどろどろが大きく影響するんだ・・・!!!!(合ってますか?)
HTML Living StandardがHTML5に代わる標準規格に
しばらくそんな厄介な時代がしばらく続きましたが、2019年5月に停戦協定が結ばれました。停戦協定の内容としては「W3CとWHATWGが協力して、WHATWGの作ってきたHTML、HTML Living StandardをHTMLとDOMの唯一の標準にする」というもの。そして、2021年1月29日。WHATWGのサイト上にあるHTML Living Standard7 が正式に W3C Recommendation(勧告)として発表されました。
それと同時に、W3Cが決めてきたHTMLの規格は全部廃止。W3CにあったHTML5のドキュメントには「最新版のHTML規格はこっちだよ」と、W3CからWHATWGのサイトへのリンクが貼られています。
*
正直英語だらけで辛いです・・・(´;ω;`)
HTML5とHTML Living Standardの違い
基本的なHTMLを書く上では大きな違いはありません。HTMLファイルはこれまで通り <!DOCTYPE html> で始まりますし、<img>や<video>でマルチメディアも扱えます。しかしながら、HTML Living Standardで新たに追加されたり変更になった点は多々あります。細かく見てみると、要素や属性において新しく定義されたものや、変更・追加・廃止されたものなどがあるため、チェックしておく必要はあるかと思います。ただし、これまでと大きく違う点として、HTML Living Standardはバージョンの概念を持たず、内容が日々改訂されていき、改訂されたその時点からその内容が標準となるため、これまでW3Cの勧告にあわせて仕様を確認してきた以上に、今後はHTML Living Standardの仕様を随時チェックしていく必要がありそうです。
*
大きな違いはないそうですが、色々チェックしなきゃいけないんですよ・・・。
CSS3はどうなの?
W3Cの管轄になっており、今の所変わりなし!!!!!
この段落では変更・追加・廃止となったタグについて解説していきます。
定義された要素
以下の要素はHTML5.2では定義されていませんが、“HTML Living standard”では定義されています。
<hgroup> | 見出しのグループ化 |
---|---|
<slot> | スロット |
変更された要素
以下の要素は“HTML Living standard”で変更された点、もしくはHTML5.2とは異なる点があります。
<cite> | 創作物のタイトル以外を含むことはできず、作者名を含めることはできなくなりました |
---|---|
<link> | “rel”属性の値が“body-ok”な値のみである場合、もしくは“itemprop”属性が指定されている場合は“body”要素内に配置できます |
<meta> | “itemprop”属性を指定した場合は“body”要素内に配置できます |
<style> | “body”要素内には配置できません |
廃止された要素
以下の要素は“HTML Living standard”では廃止されました。
<rb> | 操作メニューの項目を表す | <rtc> | 操作メニューの項目を表す |
---|
追加された属性
以下の属性はHTML5.2では定義されていませんが、“HTML Living standard”では定義されています。
<a> ping=”” | pingの送信先を指定する |
---|---|
<area> ping=”” | pingの送信先を指定する |
<body> onmessageerror=”” | 文書がAPIから解読できないメッセージを受信したときに実行するスクリプト |
<form> rel=”” | 現在の文書から見たリンク先との関係 |
<iframe> allow=”” | 利用できるブラウザの機能を指定する |
<img> 1decoding=”” 2loading=”” |
1画像のデコード方式を指定する 2画像の読み込みのタイミングを指定する |
<link> 1as=”” 2color=”” 3disabled=”” 4imagesizes=”” 5imagesrcset=”” 6integrity=”” |
1先行して読み込む外部リソースの利用先を指定する 2Safariのページピンアイコンの色を指定する 3外部スタイルシートへのリンクを無効化する 4画像を表示するサイズ 5使用可能な画像ファイルのセット 6外部リソースの整合性を確認 |
<script> 1integrity=”” 2nomodule=”” 3referrerpolicy=”” |
1外部スクリプトの整合性を確認する 2モジュールスクリプトに対応する環境でスクリプトを無効化する 3リファラーポリシーを指定する |
<video> playsinline=”” | インラインで再生する |
以下の属性は一度廃止されましたがHTML Living standard”で再び定義されています。
<object> | usemap=”” ・クライアントサイドイメージマップとの関連付け |
---|
以下のグローバル属性は“HTML Living standard”で追加されました。
autocapitalize=”” | 先頭の文字を大文字化するかを指定する | enterkeyhint=”” | ソフトウェアキーボードの[Enter]キーのアイコンを指定する |
---|---|---|---|
is=”” | カスタム要素と関連付ける | itemid=”” | 要素の内容のマイクロデータのグローバルな識別子を示す |
itemprop=”” | 要素の内容のマイクロデータのプロパティ名を指定する | itemref=”” | 要素の外にあるマイクロデータと関連付ける |
itemscope=”” | 要素の内容にマイクロデータが含まれることを示す | itemtype=”” | 要素の内容のマイクロデータのプロパティ名の定義を示す | slot=”” | スロットと関連付ける |
以下の属性は“HTML Living standard”ではすべての要素に指定できるグローバル属性として定義されています。
autofocus=”” | 自動フォーカスの可否を指定する | inputmode=”” | 入力する時のソフトウェアキーボードの種類を指定する | nonce=”” | “Content Security Policy”のワンタイムトークンを指定する |
---|
以下のイベントハンドラ属性はHTML5.2では定義されていませんが、“HTML Living standard”では定義されています。
onformdata=”” | フォームのエントリリストを生成した時に実行されるスクリプト |
---|---|
onmessageerror=”” | 文書がAPIから解読できないメッセージを受信したときに実行するスクリプト |
onsecuritypolicyviolation=”” | コンテンツセキュリティポリシーに違反した時に実行されるスクリプト |
onslotchange=”” | スロットが含まれるノードが変更された時に実行されるスクリプト |
onwebkitanimationend=”” | CSSアニメーションが終了した時に実行されるスクリプト |
onwebkitanimationinteration=”” | CSSアニメーションが繰り返された時に実行されるスクリプト |
onwebkitanimationstart=”” | CSSアニメーションが開始した時に実行されるスクリプト |
onwebkittransitionend=”” | CSSトランジションが終了した時に実行されるスクリプト |
変更された属性
以下の属性は“HTML Living standard”で変更された点、もしくはHTML5.2とは異なる点があります。
http-equiv=””属性値として“x-ua-compatible”、“content-security-policy”を指定できるようになりました。
name=””属性値として“theme-color”を指定できるようになりました。
<a> rel=”” |
属性値として“opener”を指定できるようになりました |
---|---|
<area> rel=”” |
属性値として“opener”を指定できるようになりました |
<iframe> sandbox=”” |
属性値として“allow-modals”、“allow-orientation-lock”、“allow-popups-to-escape-sandbox”、“allow-top-navigation-by-user-activation”、“allow-downloads”を指定できるようになりました |
<link> rel=”” |
属性値として“canonical”、“dns-prefetch”、 “modulepreload”、“pingback”、“preconnect”、“preload”、“prerender”を指定できるようになりました |
<meta> charset=”” |
属性値は“utf-8(UTF-8)”であるべきとされています |
以下のグローバル属性はHTML5.2とは異なる点があります。
accesskey=”” | 属性値として複数の値を指定できます |
---|
廃止された属性
以下の属性は“HTML Living standard”では廃止されました。
<a> rev=”” | リンク先から見た現在の文書との関係 |
---|---|
<area> hreflang=”” type=”” |
リンク先の記述言語 リンク先のMIMEタイプ |
<iframe> allowpaymentrequest=”” | 埋め込まれた文書がPayment Request APIを実行することを許可する |
<img> longdesc=”” | 画像を説明した文書のURL |
<link> rev=”” | リンク先から見た現在の文書との関係 |
<object> typemustmatch=”” | 埋め込まれる外部リソースが“type”属性で指定したMIMEタイプと一致する場合にのみ埋め込みを許可 |
<script> charset=”” | 外部スクリプトの文字エンコーディング |
<style> type=”” | スタイルシートの記述言語 |
<table> border=”” | 表の外枠の太さ |
以下のイベントハンドラ属性は“HTML Living standard”では廃止されています。
ondragexit=”” | ドラッグしたアイテムが要素から出た時に実行されるスクリプト |
---|---|
onloadend=”” | メディアのデータの読み込みが終わる時に実行されるスクリプト |
onshow=”” | 操作メニューを表示した時に実行されるスクリプト |
その他
以下の要素はHTML5.2では廃止されていますが、“HTML Living standard”では定義されています。
<menu> | 操作メニュー |
---|
以下のイベントハンドラ属性はHTML5.2では廃止されていますが、“HTML Living standard”では定義されています。
oncontextmenu=”” | コンテキストメニューを表示した時に実行されるスクリプト |
---|
*
*
*
*
*
*
*
*
・・・・・w
う~~~ん、そんなすぐ覚えるの無理があるのでその時調べてやります!!!ってことでHTML5が廃止されたというお話でした。それではまた!!