Interactive Lab

Modern DOM Orchestration & Discrete Transitions

Leverage the native HTML5 inert attribute and CSS @starting-style entry animations with zero transition JavaScript.

transitions-and-a11y.css
/* Modern CSS & HTML5: @starting-style and inert focus containment */

/* 1. Transition entry styles natively in pure CSS */
dialog[open] {
  opacity: 1;
  transform: scale(1) translateY(0);
  transition: opacity 0.3s ease-out, transform 0.3s ease-out, display 0.3s allow-discrete;

  @starting-style {
    opacity: 0;
    transform: scale(0.95) translateY(12px);
  }
}

/* 2. Inert attribute isolates background completely from focus & accessibility tree */
/* <main inert={isModalOpen}> ... </main> */

Core Advantages

  • @starting-style: CSS transitions from display: none without JavaScript timers.
  • inert: Disables focus and accessibility trees for background containers automatically.
  • Hardware 3D: Dynamic CSS variable transforms execute directly on the GPU compositor.
Modal & Inert Visualizer

// Background container

Pure CSS Entry Animation

This dialog opens and transitions smoothly from display: none using the CSS @starting-style rule.

Hardware 3D Transforms
3D Matrix Node

Spatial Engine