目標

この文書は W3C やその他の団体により開発された・開発中のそれぞれの領域(メディア向け、ゲーム、など)のアプリケーションのための技術や、アプリケーション開発の中の特定の項目(セキュリティーなど)を推進するためのまとめになります。各ページは実装状況ごとにカテゴライズされた機能リストと、それらがそれぞれの項目にどう関係するのかの解説という構成になっています。各部分の最後にはそれらの機能に関係する仕様の標準化段階と実装状況がまとめられています。

機能リストは短い文章で書かれていることが多いです。これは、標準化状況や実装が進んだ際に対応する機能をより進んだ実装段階の項目に移動させるためです。

対象者

この文書はウェブアプリケーションの開発者で特定の軸 (出版など) についてや特定のデバイス (モバイルなど) についてのウェブプラットフォームの状況を知りたいような方を主な対象としています。デバイス開発者にとっても、製品がどのような機能をサポートしているべきかについての有益な情報があるかもしれません。

この文書では以下のような疑問に答えています:

  • ブラウザ間でどの機能が現在サポートされているか
  • どの機能がもうすぐ使えるようになるか
  • どのような機能が検討されていて将来的に仕様化されるのか
  • 標準化活動が現状行われていないある分野でどのような技術的なギャップがあるのか

表について

各部分の最後の表では個別機能についての情報をまとめています。列は表によって異なることがあります。関連する機能について、名前、それを実現するための一つ以上の仕様 (もしくは仕様の中の個別機能) 、そしてその詳細が記載されています。

成熟度レベル

機能の成熟度レベルはその標準化の状況となります。

成熟度 意味
Editor's Draft "Editor's draft" として規定されており、どこにもまだ正式に公表されていません。機能は安定しておらず、機能が安定化するまで実装は大きく変化する可能性が残されています。
Working Draft W3C Working Draftとして規定されています。機能は安定しておらず、機能が安定するまで実装は大きく変化する可能性が残されています。
Candidate Recommendation W3C Candidate Recommendationとして規定されています。機能は安定しているものと考えてよいですが、実装での状況次第で変更される可能性が残されています。実装は完全に相互互換性が担保されているわけではありません。
Proposed Recommendation W3C Proposed Recommendationとして規定されています。機能は W3C メンバーによる最終レビューにかけられています。昨日は安定しており、実装も相互互換性がほぼ担保されています。
Recommendation W3C Recommendationとして規定されています。機能は安定しており、存在する実装はほぼ相互互換性があります。
Living Standard WHATWG Living Standardとして規定されています。安定性や相互互換性はそれぞれの機能に依存し、通常は仕様書に記載されています。
Note W3C Noteとして規定されています。"Note" としての公表は、機能がそれ自体参考情報である (ガイドライン、テクニック、最良実践例など) であるか、機能の開発が何らかの理由で停止されたものであることを示します。
Retired 機能はウェブ標準でありましたが、実装や利用は何らかの理由 (プライバシー問題、セキュリティー問題、より良い機能が利用可能、など) で推奨されなくなりました。

実装状況

ウェブブラウザ向けの機能について、"現在の実装状況" と "実装意向の状況" は主要ブラウザでの実装状況を示しています。表示は実装状況により分類されており、以下のいずれかになります:

  • 出荷済: 機能はブラウザにより実装され、正常に利用できます。
  • 実験的: 機能はブラウザの将来のバージョン向けに計画され、開発版で試験可能です。また、有効化やプレフィックスが必要な場合があります。
  • 開発中: 機能は開発されてはいますが、利用可能ではありません。
  • 検討中: 機能はまだ開発段階にはありませんが、将来のバージョンに向けて検討されています。

表には以下のブラウザについての実装状況が含まれます:

アイコン ブラウザ名
主要ブラウザエンジン
Chrome Chrome
Edge Microsoft Edge
Firefox Firefox
Safari Safari
その他のブラウザエンジン
Baidu Browser Baidu Browser
Opera Opera
QQ Browser QQ Browser
Samsung Internet Samsung Internet
UC Browser UC Browser

ブラウザエンジンのアイコンの上部に表示されるバッジは以下の追加の実装状況の情報を示します:

バッジ 意味
Desktop only 実装状況の情報はブラウザのデスクトップ版のものです。
Mobile only 実装状況の情報はブラウザのモバイル版のものです。
注: 実装状況の情報はブラウザがそのレイアウトエンジンを利用している場合 (例えば、"Firefox for Android" や "Safari for iOS") にのみ該当し、モバイル版が他のレイアウトエンジンを利用している場合 (例えば、"Firefox for iOS") には該当しません。言い換えると、現在の実装状況の情報においては、モバイルバッジは "iOS" では Safari、"Android" ではすべてのブラウザを示すことになります。
Desktop and mobile 実装状況はブラウザのデスクトップ版・モバイル版の両方のものです。
Behind a flag ブラウザで機能を利用するには何らかのフラグを設定する必要があります。フラグはユーザがパラメータとして設定できる設定フラグによる場合や、ブラウザをコンパイルする際に設定が必要なコンパイルフラグによる場合、ブラウザを起動する前に設定する必要があるランタイムフラグによる場合などがあります。
Prefix required プリフィックスが機能を利用するために必要です。例えば、Firefox ではよく CSS プロパティーでは-moz-を、API 関数ではmozプリフィックスを追加するといったものです。
Partial implementation 実装状況の情報は完全ではなく、実装は部分的である可能性があります。

マウスオーバーがサポートされているデバイスでは、ブラウザアイコン上にカーソルを乗せた際に実装状況のまとめがツールチップとして表示されます。

また、実装状況の情報は以下のプラットフォーム状況の情報から収集されています:

実装状況のブラウザアイコンをクリックすると、該当のプラットフォームについて実装状況を提供しているウェブサイト内のページに遷移します。

特定のブラウザでの実装状況の情報が存在しないというのは、機能が全く実装されておらず、実装予定も今のところ存在しないことを意味します。しかしながら、実装状況の情報が収集できていないという場合もあります。もし、見当たらないか間違った実装状況の項目があれば、web-roadmap の GitHub レポジトリに issue を立てていただけるようお願いします