Layout & CSS More detail A2 · Formal specification Platform: Web

Subgrid

A subgrid is a grid inside another grid that shares its parent's row or column sizes. It can share one direction or both.

See how it works
You might call it nested shared gridinherited grid tracks

See how it works

Original worked exampleSubgrid

Another example

Three pricing cards sit on a parent grid. Each card uses `grid-template-rows: subgrid`. Plan names, prices, features, and CTA buttons line up even when text lengths differ. On a narrow screen, the parent changes to one column and the layout still makes sense.

Main parts

  1. 01Parent tracks
  2. 02Subgrid axis
  3. 03Aligned descendants

Use it when

Use it when content inside nested components must line up with shared parent tracks without copying the track rules.

Do not use it when

Do not use subgrid only because one grid is nested. A separate child grid is simpler when items do not need to line up across cards.

Name used in code

grid-template-columns: subgrid and/or grid-template-rows: subgrid

Before you ship

Check content order, shared design values, component consistency, contrast, zoom, and layout changes by screen size. Verify every theme, language, and state. If there is motion, offer an equal reduced-motion experience.

Request you can copy

Outcome: Use or define Subgrid to make the visual experience clear and easy to use. User context: Three pricing cards sit on a parent grid. Each card uses `grid-template-rows: subgrid`. Plan names, prices, features, and CTA buttons line up even when text lengths differ. On a narrow screen, the parent changes to one column and the layout still makes sense. Design concept to apply: Subgrid. Why it fits: Use it when content inside nested components must line up with shared parent tracks without copying the track rules. Do not use it when: Do not use subgrid only because one grid is nested. A separate child grid is simpler when items do not need to line up across cards. Design requirements: Set the content order, shared design values, and reusable components. Define how the layout changes by screen size and state. Keep useful design choices separate from decoration. Inclusion and resilience: Check contrast, zoom, languages, themes, and reduced motion when needed. Do not use color or effects as the only way to show meaning. Acceptance criteria: The design stays clear on phones and desktops, at zoom, in every theme, and in all supported languages. Interactive states stay clear and consistent. Evidence and limits (evidence boundary): A formal document may still be a draft, release candidate, or final version. Check its status and browser or platform support. Unknowns to confirm: Brand limits, amount of content, supported themes and languages, target devices, and design-system rules.

Check this request

Review the current use of Subgrid. Definition: A subgrid is a grid inside another grid that shares its parent's row or column sizes. It can share one direction or both. Release checks: Check content order, shared design values, component consistency, contrast, zoom, and layout changes by screen size. Verify every theme, language, and state. If there is motion, offer an equal reduced-motion experience. Before changing code, report the evidence you found, gaps, severity, and the smallest safe fix.

A2
How official is this term?

Formal specification

A published, versioned formal specification defines this term for the listed technical scope.

A formal document may still be a draft, release candidate, or final version. Check its status and browser or platform support.

Scope
CSS subgrid layout
Document status
draft
Checked on
2026-07-30

Evidence sources & scope

Authority source + Term reference · W3C CSS Working Group · draft CSS Grid Layout Module Level 2 — Subgrids Subgrids Scope: CSS layout; direct scope: Subgrids Role here: Direct term reference Source covers: canonical name, definition, semantics, implementation Authority source · W3C CSS Working Group · draft CSS Grid Layout Module Level 2 Scope: CSS layout Role here: Authority within stated scope Source covers: canonical name, definition, semantics, implementation

Copy it yourself

The browser could not copy this. Select the request below and copy it yourself.