HTML <iframe> sandbox 属性

定义和用法

sandbox 属性为 iframe 中的内容启用了一组额外的限制。

sandbox 属性存在时,它将:

  • 将内容视为来自唯一来源
  • 阻止表单提交
  • 阻止脚本执行
  • 禁用 API
  • 防止链接指向其他浏览上下文
  • 防止内容使用插件(通过 <embed>、<object>、<applet> 或其他方式)
  • 防止内容导航其顶层浏览上下文
  • 阻止自动触发的功能(例如自动播放视频或自动聚焦表单控件)

sandbox 属性的值可以为空(则应用所有限制),或是以空格分隔的预定义值的列表,这将去除特定的限制。

实例

例子 1

带有额外限制的 <iframe>:

<iframe src="demo_iframe_sandbox.htm" sandbox></iframe>

亲自试一试

例子 2

允许表单提交的 <iframe> 沙盒:

<iframe src="demo_iframe_sandbox_form.htm" sandbox="allow-forms"></iframe>

亲自试一试

例子 3

允许脚本的 <iframe> 沙盒:

<iframe src="demo_iframe_sandbox_origin.htm" sandbox="allow-scripts"></iframe>

亲自试一试

语法

<iframe sandbox="value">

属性值

描述
""(没有值) 应用以下所有限制。
allow-forms 允许表单提交。
allow-modals 允许打开模态窗口。
allow-orientation-lock 允许锁定屏幕方向。
allow-pointer-lock 允许使用 Pointer Lock API。
allow-popups 允许弹出窗口。
allow-popups-to-escape-sandbox 允许弹出窗口打开新窗口,而不继承沙盒化。
allow-presentation 允许开始演示会话。
allow-same-origin 允许 iframe 内容被视为与包含文档有相同的来源。
allow-scripts 允许运行脚本。
allow-top-navigation 允许 iframe 内容导航其顶级浏览上下文。
allow-top-navigation-by-user-activation 允许 iframe 内容导航其顶级浏览上下文,但仅在用户发起的情况下。

浏览器支持

表中的数字注明了首个完全支持该属性的浏览器版本。

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
4.0 10.0 17.0 5.0 15.0