Responsive design with Container Queries, fluid typography, cqi/cqb units, subgrid, intrinsic layouts, foldable devices, and mobile-first patterns for React…
Responsive Patterns
Modern responsive design patterns using Container Queries, fluid typography, and mobile-first strategies for React applications (2026 best practices).
Overview
Building reusable components that adapt to their container
Implementing fluid typography that scales smoothly
Creating responsive layouts without media query overload
Building design system components for multiple contexts
Optimizing for variable container sizes (sidebars, modals, grids)
Core Concepts
Container Queries vs Media Queries
Feature
Media Queries
Container Queries
Responds to
Viewport size
Container size
Component reuse
Context-dependent
Truly portable
Browser support
Universal
Baseline 2023+
Use case
Page layouts
Component layouts
Modern CSS Layout
Load Read("${CLAUDE_SKILL_DIR}/rules/css-subgrid.md") for CSS Subgrid patterns: nested grid alignment, card layouts with aligned titles/content/actions, two-dimensional subgrid.
Load Read("${CLAUDE_SKILL_DIR}/rules/css-intrinsic-responsive.md") for intrinsically responsive layouts: auto-fit/minmax grids, clamp() for fluid everything, container queries for component logic, zero media query patterns.
Load Read("${CLAUDE_SKILL_DIR}/rules/responsive-foldables.md") for foldable/multi-screen device support: env(safe-area-inset-*), viewport segment queries, dual-screen layouts, progressive enhancement.
Key patterns covered: CSS Subgrid alignment, intrinsic responsive grids (auto-fit + minmax), fluid clamp() scales, foldable device layouts, safe area insets, viewport segment queries.
CSS Patterns
Load Read("${CLAUDE_SKILL_DIR}/rules/css-patterns.md") for complete CSS examples: container queries, cqi/cqb units, fluid typography with clamp(), mobile-first breakpoints, CSS Grid patterns, and scroll-queries.
Key patterns covered: Container Query basics, Container Query Units (cqi/cqb), Fluid Typography with clamp(), Container-Based Fluid Typography, Mobile-First Breakpoints, CSS Grid Responsive Patterns, Container Scroll-Queries (Chrome 126+).
React Patterns
Load Read("${CLAUDE_SKILL_DIR}/rules/react-patterns.md") for complete React examples: ResponsiveCard component, Tailwind container queries, useContainerQuery hook, and responsive images.
Key patterns covered: Responsive Component with Container Queries, Tailwind CSS Container Queries, useContainerQuery Hook, Responsive Images Pattern.
Accessibility Considerations
/* IMPORTANT: Always include rem in fluid typography */
/* This ensures user font preferences are respected */
/* ❌ WRONG: Viewport-only ignores user preferences */
font-size: 5vw;
/* ✅ CORRECT: Include rem to respect user settings */
font-size: clamp(1rem, 0.5rem + 2vw, 2rem);
/* User zooming must still work */
@media (min-width: 768px) {
/* Use em/rem, not px, for breakpoints in ideal world */
/* (browsers still use px, but consider user zoom) */
}
Anti-Patterns (FORBIDDEN)
/* ❌ NEVER: Use only viewport units for text */
.title {
font-size: 5vw; /* Ignores user font preferences! */
}
/* ❌ NEVER: Use cqw/cqh (use cqi/cqb instead) */
.card {
padding: 5cqw; /* cqw = container width, not logical */
}
/* ✅ CORRECT: Use logical units */
.card {
padding: 5cqi; /* Container inline = logical direction */
}
/* ❌ NEVER: Container queries without container-type */
@container (min-width: 400px) {
/* Won't work without container-type on parent! */
}
/* ❌ NEVER: Desktop-first media queries */
.element {
display: grid;
grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 768px) {
.element {
grid-template-columns: 1fr; /* Overriding = more CSS */
}
}
/* ❌ NEVER: Fixed pixel breakpoints for text */
@media (min-width: 768px) {
body { font-size: 18px; } /* Use rem! */
}
/* ❌ NEVER: Over-nesting container queries */
@container a {
@container b {
@container c {
/* Too complex, reconsider architecture */
}
}
}
Browser Support
Feature
Chrome
Safari
Firefox
Edge
Container Size Queries
105+
16+
110+
105+
Container Style Queries
111+
❌
❌
111+
Container Scroll-State
126+
❌
❌
126+
cqi/cqb units
105+
16+
110+
105+
clamp()
79+
13.1+
75+
79+
Subgrid
117+
16+
71+
117+
Rules
Each category has individual rule files in rules/ loaded on-demand:
Category
Rule
Impact
Key Pattern
Modern CSS Layout
rules/css-subgrid.md
HIGH
CSS Subgrid for nested grid alignment, card layouts
Modern CSS Layout
rules/css-intrinsic-responsive.md
HIGH
Intrinsic responsive layouts, auto-fit/minmax, clamp(), zero breakpoints
Modern CSS Layout
rules/responsive-foldables.md
MEDIUM
Foldable devices, safe area insets, viewport segments
CSS
rules/css-patterns.md
HIGH
Container queries, cqi/cqb, fluid typography, grid, scroll-queries
React
rules/react-patterns.md
HIGH
Container query components, Tailwind, useContainerQuery, responsive images
PWA
rules/pwa-service-worker.md
HIGH
Workbox caching strategies, VitePWA, update management
PWA
rules/pwa-offline.md
HIGH
Offline hooks, background sync, install prompts
Animation
rules/animation-motion.md
HIGH
Motion presets, AnimatePresence, View Transitions
Animation
rules/animation-scroll.md
MEDIUM
CSS scroll-driven animations, parallax, progressive enhancement
Touch & Mobile
rules/touch-interaction.md
HIGH
Touch targets (44px min), thumb zones, pinch-to-zoom, safe areas, gestures
Total: 10 rules across 6 categories
Key Decisions
Decision
Option A
Option B
Recommendation
Query type
Media queries
Container queries
Container for components, Media for layout
Container units
cqw/cqh
cqi/cqb
cqi/cqb (logical, i18n-ready)
Fluid type base
vw only
rem + vw
rem + vw (accessibility)
Mobile-first
Yes
Desktop-first
Mobile-first (less CSS, progressive)
Grid pattern
auto-fit
auto-fill
auto-fit for cards, auto-fill for icons
Related Skills
design-system-starter - Building responsive design systems
ork:performance - CLS, responsive images, and image optimization
ork:i18n-date-patterns - RTL/LTR responsive considerations
Capability Details
container-queries
Keywords: @container, container-type, inline-size, container-name
Solves: Component-level responsive design
fluid-typography
Keywords: clamp(), fluid, vw, rem, scale, typography
Solves: Smooth font scaling without breakpoints
responsive-images
Keywords: srcset, sizes, picture, art direction
Solves: Responsive images for different viewports
mobile-first-strategy
Keywords: min-width, mobile, progressive, breakpoints
Solves: Efficient responsive CSS architecture
grid-flexbox-patterns
Keywords: auto-fit, auto-fill, subgrid, minmax
Solves: Responsive grid and flexbox layouts
container-units
Keywords: cqi, cqb, container width, container height
Solves: Sizing relative to container dimensions
References
Load on demand with Read("${CLAUDE_SKILL_DIR}/references/<file>"):
File
Content
container-queries.md
Container query patterns
fluid-typography.md
Accessible fluid type scalesdon't have the plugin yet? install it then click "run inline in claude" again.