限制所有不可见和不可见的跨源 iframe
本文介绍 iframe 限制以及标准化 display: none 和不可见限制的好处。
注意
本文适用于 Microsoft Edge 版本 116 或更高版本。
摘要
跨进程呈现时,不可见和不可见的跨源 iframe display: none 会受到限制,但在呈现同一进程时不受限制。 对于开发人员来说,同一进程方案中没有限制可能会导致不可预知的行为,他们可能不知道用于呈现页面的基础流程模型。 此外,在此 iframe 方案中,恶意参与者可以探测以查看浏览会话是否启用了站点/源隔离。
受限制的 iframe 无法访问 requestAnimationFrame 和 ResizeObserver,因此不同的限制方法会影响 Web 开发人员。 此功能标准化限制,因此它适用于所有跨源 iframe,无论它们是同一进程还是跨进程。
注意
“不可见”是指视区外部的非零区域帧。
目标
Iframe 限制是一种 Blink 机制,它尝试减少布局和呈现开销。 受限制的帧仅进行部分布局,且requestAnimationFrameResizeObserver在帧受到限制时不运行。 放置在与其父进程不同的进程中且 display: none 不可见或不可见的跨源 iframe 将受到限制。 当前,在其父级所在的同一进程中呈现的跨源帧不会受到影响,导致基于进程模型的不同行为。 启用后,此策略会限制所有跨源 display: none 帧或不可见帧,从而在同一进程和跨进程案例之间提供一致的行为。
内容许可证
注意
本页面的某些部分是根据 Chromium.org 创建和共享的作品所做的修改,并根据 Creative Commons Attribution 4.0 国际许可证中所述的条款进行使用。 可在此处找到原始页面。
本作品根据 Creative Commons Attribution 4.0 International License 获得许可。