Feature-Policy:fullscreen

これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

HTTP の Feature-Policy ヘッダーにおける fullscreen ディレクティブは、現在の文書が Element.requestFullScreen() を使用することを許可するかどうかを制御します。このポリシーが有効であれば、 返却された PromiseTypeError で拒否されます。

既定では、最上位の文書およびその同じオリジンの子フレームが全画面モードを要求し、入ることができます。このディレクティブは別オリジンのフレームが全画面モードを使用することを許可したり拒否したりします。同じオリジンのフレームも含みます。

このディレクティブと allowfullscreen が同じ <iframe> 要素に指定されていた場合、このディレクティブが優先します。

構文

Feature-Policy: fullscreen <allowlist>;
<allowlist>

許可リストは、以下の値のうち一つを取るオリジンのリストです。

  • *: この機能は既定で、最上位の閲覧コンテキストと、含まれるすべての閲覧コンテキスト (iframe) で許可されます。
  • 'self': (既定値) この機能は既定で、最上位の閲覧コンテキストと、含まれる同じオリジンの閲覧コンテキスト (iframe) で許可されます。この機能は、含まれる閲覧コンテキストにある別なオリジンの文書では許可されません。
  • 'none': この機能は最上位および含まれる閲覧コンテキストで無効になります。
  • <origin(s)>: この機能は特定のオリジン (例えば、 https://example.com) で許可されます。オリジンは空白で区切ってください。

* の値 (すべてのオリジンで有効) または 'none' (すべてのオリジンで無効) は単独でのみ使用できますが、 'self' は一つ以上のオリジンと一緒に使用することができます。

既定値は 'self' です。

一般的な例

SecureCorp Inc. は、自分自身のオリジンおよびオリジンが https://example.com のものを除いてすべての Fullscreen API を無効にしたがっているとします。以下の機能ポリシーを設定する HTTP レスポンスヘッダーを配信することで実現できます。

Feature-Policy: fullscreen 'self' https://example.com

<iframe> 要素と

FastCorp Inc. は、特定の <iframe> を除いたすべての別オリジンの子フレームの fullscreen を無効にしたがっているとします。以下の機能ポリシーを設定する HTTP レスポンスヘッダーを配信することで実現できます。

Feature-Policy: fullscreen 'self'

それから <iframe> 要素に allow 属性を含めます。

<iframe src="https://other.com/videoplayer" allow="fullscreen"></iframe>

iframe の属性は、選択的に特定のフレームの機能を有効にし、その他はたとえそれらのフレームが同じオリジンからきた文書を含んでいても無効にします。

仕様書

仕様書 状態 備考
Feature Policy ドラフト 初回定義
Fullscreen API
Fullscreen の定義
ドラフト fullscreen ポリシーを定義

ブラウザーの対応

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応57 なし なし なし46 なし
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応5757 なし なし46 なし なし

ドキュメントのタグと貢献者

このページの貢献者: mfuji09
最終更新者: mfuji09,