Lab 03: Container Queries
Overview
Step 1: Container Setup
/* Mark an element as a container */
/* container-type: inline-size */
/* — enables @container queries on inline (width) axis */
/* — does NOT enable height queries */
.card-wrapper {
container-type: inline-size;
}
/* container-type: size */
/* — enables both width AND height queries */
/* — rare: sizing must not depend on children */
.fixed-panel {
container-type: size;
width: 400px;
height: 300px;
}
/* container-type: normal */
/* — enables style container queries only */
/* — default for all elements */
.style-container {
container-type: normal;
}
/* Named containers (for targeting specific ancestors) */
.page-layout {
container-type: inline-size;
container-name: page;
}
/* Shorthand: container: name / type */
.sidebar {
container: sidebar / inline-size;
}
.card-grid {
container: card-grid / inline-size;
}Step 2: Writing @container Queries
Step 3: Real-World Card Component
Step 4: Nested Containers
Step 5: Style Container Queries
Step 6: Container Queries vs Media Queries
Step 7: Practical Pattern — Dashboard Widgets
Step 8: Capstone — Container Query Parser + Breakpoint Calculator
Summary
Feature
Syntax
Purpose
Last updated
