CSS Typed OM Playground - Online attributeStyleMap Explorer
Manipulate CSS values as typed objects using attributeStyleMap. Convert between CSSUnitValue, CSSMathSum, etc. Futuristic CSS‑in‑JS.
UD5 Toolkit
@container style() is a CSS container query feature that allows you to conditionally apply styles based on the computed style values of a container element — most commonly CSS custom properties (variables). Unlike @container size() which responds to dimensions, style queries check things like --theme: dark or --variant: primary, enabling truly context-aware components.
@container (min-width: 400px)) respond to the container's dimensions. Style queries (@container style(--theme: dark)) respond to CSS property values on the container. This means a single component can adapt to its context without knowing about viewport sizes — perfect for design systems where the same card component needs to look different inside a dark sidebar vs a light main content area.
@container style(). Firefox and Safari are actively working on implementation. You can use @supports (container-type: inline-size) as a progressive enhancement fallback. For non-supporting browsers, provide base styles that work without the query.
--theme: dark|light on any ancestor.--variant: primary|secondary|danger.--density: compact|comfortable|spacious.container-name is optional. Without it, @container style(--x: 1) matches the nearest ancestor with a container-type. Using a named container like @container my-container style(--x: 1) lets you target a specific ancestor, which is useful when multiple containers are nested.
and / or logic: @container style(--theme: dark) and style(--variant: primary) { ... }@container style(--density: compact) or style(--density: comfortable) { ... }not: @container not style(--theme: dark) { ... }
Manipulate CSS values as typed objects using attributeStyleMap. Convert between CSSUnitValue, CSSMathSum, etc. Futuristic CSS‑in‑JS.
Load images or use colors and apply all 15 CSS blend modes. Visual tester for creative effects.
Apply user‑select: none, text, all and see how it affects selection. Copy the CSS snippet for your UI elements.
Write CSS with native nesting (like SCSS) and see the browser’s native parsing. Validator and live output.
Reset native styling on form elements with appearance: none. See before and after. Essential for custom forms.
Paste your CSS and get a sorted list of all custom properties defined under :root with their values. Quick audit.
Swap between physical and logical properties (margin‑inline vs margin‑left). Live preview with writing‑mode. Internationalize your CSS.
Paste your CSS and see rules sorted by specificity. Find overrides and potential collisions. Understand your cascade.
Register a custom CSS property with syntax, initial value, and inherits. Animate colors and numbers that couldn’t before.
See every HTML input type in one page. Check browser support and styling. Copy sample markup. Quick frontend reference.
Paste your stylesheet and get a clean list of all custom properties defined under :root. Copy the whole block. Local analysis.
Set up multiple @layers and use revert‑layer to fall back. See the computed style and cascade resolution live.
Upload any picture and instantly get a 5‑color palette. Useful for UI design themes. Canvas‑based extraction.
List all resources loaded by the current page and their detailed timing breakdown. In‑browser waterfall.
Paste a raw server log snippet and see a structured table with IP, method, URL, and status. Quick audit.
Build a Vite configuration file by selecting plugins (Vue, React, etc.), aliases, and build options. Copy the final code.
Access the Paint Timing API and display First Paint, First Contentful Paint, and Largest Contentful Paint times. Quick perf check.
Apply will‑change to any element and see its effect on compositing. Learn best practices for smooth animations.
Build a renovate.json file to automate dependency updates. Choose schedule, automerge, and package rules. Local.
Create promises that resolve or reject after a delay. See state changes and chain .then/.catch. Debug async code.
Set an alarm relative to today's sunset (e.g., 30 minutes before). Perfect for evening routines. Uses geolocation (optional).
Choose where page breaks should occur for printing. Get the break‑before, break‑after, and break‑inside CSS.
Implement a dark/light theme toggle that respects prefers‑color‑scheme. Copy the complete JavaScript and CSS.
Log shedding events, note duration, and track humidity to optimize next cycle. Healthy scales.
Enter network name and password to generate a stylish printable card for visitors. Local, no data leak.
Generate a random 5‑color palette where every adjacent pair passes WCAG AA contrast. Safe for inclusive designs.
Calculate flour, water, starter amounts to achieve a target loaf hydration. Adjusts for starter hydration. Instant local calculation.
See the current Service Worker registration, its state, and scope. Send 'skipWaiting' and update. PWA debug.
Schedule tasks with user‑visible, user‑blocking, or background priority. See execution order and delays. Modern web perf.
See your device's battery level, charging status, and discharge time using the Battery Status API. Fun utility.