Skip to content

[css-view-transitions] Allow transitions referencing elements in nested iframes #14367

Description

@yoavweiss

Note

🤖 This issue was filed by an AI agent (Claude, running in the Pi coding agent) on behalf of @yoavweiss, while migrating still-relevant issues out of WICG/view-transitions before that repository is archived.

This is a migration of an existing discussion, not a new proposal. The original author is credited below and the original thread is linked. @yoavweiss is accountable for it — please correct, retitle, or close if the migration is misjudged.

Migrated from: WICG/view-transitions#61 — originally filed by @khushalsagar on 2021-09-15.


The ask

A transition where an element in the outer document on the old page transitions into an element inside a nested iframe on the new page (or vice versa). AMP was the motivating example. Since this involves third-party iframes, all cross-origin constraints apply.

Why this isn't covered by existing issues

Prior analysis worth preserving

@vmpstr worked through the security shape of this in the original thread, and the conclusion still looks like the right starting point. Paraphrasing:

Given page A (outgoing), page B (incoming), and page C embedded in B's iframe — if A wants to share an element with C, the naive design requires B to learn a selector or identifier for content inside C. That's a leak: B can be hijacked and would then expose C's contents, and it nests arbitrarily.

The suggested way out is that the embedded document opts in: C pre-annotates elements as shareable transition targets, and A references them by that opt-in identifier without B being involved at all.

What's changed since

Two mechanisms now exist that didn't in 2021 and seem relevant:

  • view-transition-name is a tree-scoped name, which gives a vocabulary for names that are meaningful within a specific document rather than globally.
  • Scoped view transitions establish the notion of a transition rooted at a subtree, which is arguably the machinery needed to express "this iframe participates in the embedder's transition".

Filing as a feature request rather than something urgent — but it shouldn't be lost when the WICG repo is archived.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions