{{-- M3's breakpoints, live: the one this window is in, what each one changes, and the cards that light up through real media queries, so the page proves the breakpoints rather than only describing them. Then the layout components, and the way on to the three canonical layouts — list-detail, supporting pane, feed — each on a page of its own (plan step 38), reached through the section navigation below. --}} @php $examples = [ 'Surfaces, stacks, rows and grids' => <<<'BLADE'

lowest, outlined

low

high

highest

A row that stacks below 600px

Its middle item is hidden from 840px.

Widen the window past 840px and this goes.

BLADE, ]; @endphp

Layout

Widths are M3's breakpoints and nothing else: compact below 600px, then medium 600, expanded 840, large 1200 and extra-large 1600. Scripts read the same numbers from resources/js/breakpoints.js.

Compact

below 600px

Medium

600–839px

Expanded

840–1199px

Large

1200–1599px

Extra-large

from 1600px

Class Navigation Panes Dialogs and sheets Margin Compact Navigation bar; the rail opens as a modal One Full-screen dialogs, bottom sheets for choices, date pickers as dialogs 16px Medium Collapsed navigation rail One Basic dialogs, docked search and pickers 24px Expanded Navigation rail, collapsible; starts collapsed Two: <x-list-detail>, or <x-supporting-pane> at 360px Basic dialogs, side sheets 24px Large Navigation rail, expanded by default Two; a fixed pane is 412px Basic dialogs, side sheets 24px Extra-large Navigation rail, expanded Two, a third as a side sheet Basic dialogs, side sheets 24px

<x-scaffold> does all of this: resize this showcase and watch the bar, the rail and the content margin (--material-margin) change at 600, 840 and 1200px. A visitor who has chosen a rail width keeps it; until then the rail follows the class.

The layout components

M3 describes a layout as a scaffold of bars and rails around panes, and names three canonical layouts. These are those words as components, each taking as, hide-below and hide-from, and only the spacing tokens for a gap or padding:

  • <x-scaffold> — the bars, the rail and the FAB around the page (this showcase is one).
  • <x-pane> — a content region with M3's margins and its own app bar.
  • <x-list-detail> — a list and the detail of its selection: one pane below 840px, two from it.
  • <x-supporting-pane> — a focus pane and a pane beside it from 840px, below it or a bottom sheet before.
  • <x-feed> — cards in columns that multiply as the room grows, one column below 600px.
  • <x-surface> — a tonal region: a surface role, padding, a corner and an outline.
  • <x-stack>, <x-row> and <x-grid> — arrangement inside a pane.
  • Each canonical layout, on a page of its own

    @foreach ($examples as $title => $code) @endforeach