Nested Iframes
This page contains an outer document, a level-1 iframe, a level-2 iframe nested inside the level-1 iframe, and a fourth iframe that only appears after a delay. Automation tools must switch iframe context (e.g. driver.switchTo().frame() or Playwright's frameLocator) to interact with each nested button.
Outer document (no iframe)
This counter lives directly on the main page, outside any iframe.
Outer click count: 0
Level 1 iframe (contains level 2)
The blue region below is an <iframe srcDoc>. Inside it is a second, amber-bordered iframe nested two levels deep from the outer document.
Dynamically-appearing iframe
The iframe below is not present in the DOM at page load. It is injected via setTimeout after a 1.5 second delay — useful for practicing explicit waits for a frame to exist before switching into it.
Waiting to inject iframe (appears at ~1.5s)…