Permissions-Policy: fullscreen

HTTP Permissions-Policy 头部中的 fullscreen 指令控制当前文档是否允许使用 Element.requestFullscreen()

默认情况下,顶级文档及其同源子框架可以请求并进入全屏模式。此指令允许或阻止跨源框架使用全屏模式。这包括同源框架。

具体来说,在定义的策略阻止使用此功能的情况下,requestFullscreen() 调用将返回一个 Promise,该 Promise 将拒绝并返回一个 TypeError

注意:如果 <iframe> 元素上同时存在此指令(即通过 allow 属性)和 allowfullscreen 属性,则此指令优先。

语法

http
Permissions-Policy: fullscreen=<allowlist>;
<allowlist>

授予使用该功能权限的源列表。有关更多详细信息,请参阅 Permissions-Policy > 语法

默认策略

fullscreen 的默认允许列表为 self

示例

常规示例

SecureCorp Inc. 想要禁用所有浏览上下文中(除了其自身源和源为 https://example.com 的源之外)的全屏 API。它可以通过提供以下 HTTP 响应头来定义权限策略,从而实现此目的。

http
Permissions-Policy: fullscreen=(self "https://example.com")

使用 <iframe> 元素

FastCorp Inc. 想要禁用所有跨源子框架(除了特定的 <iframe> 之外)的 fullscreen。它可以通过提供以下 HTTP 响应头来定义权限策略,从而实现此目的。

http
Permissions-Policy: fullscreen=(self)

然后在 <iframe> 元素上包含一个 allow 属性。

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

iframe 属性可以选择地在某些框架中启用功能,而在其他框架中禁用功能,即使这些框架包含来自同一源的文档。

规范

规范
全屏 API 标准
# permissions-policy-integration

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅