Browse the docs
Foundations / Sheet & Heading

Sheet & Heading

The paper everything sits on, and the lettering that labels it.

Server or clientWCAG AASince v0.1

Status timeline

A sheet of paper, taped on. Everything inside is printed on paper.

Change every prop live in the playground.

Props

Sheet

PropTypeDefaultWhat it does
childrenReactNodenone—
tape"none" | "periwinkle" | "mint" | "mustard" | "bubblegum"mustardColor of the two tape strips holding it down, or `none`.
tiltnumber0A slight rotation in degrees.

Also takes every attribute of <div> (277 more, e.g. onClick, className, aria-*).

Heading

PropTypeDefaultWhat it does
children requiredReactNode——
classNamestringnone—
idstringnone—
level2 | 3 | 4 | 12h1–h4.
scribblebooleantrue for h1/h2Tomato scribble underline.
writeOnbooleantrue for h1/h2Letters write on when the heading scrolls into view.

Lettering

PropTypeDefaultWhat it does
children requiredReactNode—The text to letter. Anything that isn't a string or number renders untouched.
ampnumber2How wobbly: roughly the max tilt in degrees.
classNamestringnone—
writeOnbooleanfalseLetters start hidden and write on when `data-in` is set on this element (see Heading).

Use it well

DoUse lettering for short labels and headings.
Don'tLetter whole paragraphs. Body text stays upright and readable.

Accessibility

  • Lettering gives screen readers the plain text once; the jittered letters are hidden.
  • Headings render fully written on the server and write on only after JavaScript loads.
Five stamps!

All aboard.

You took the whole tour. Here's Holo Pip, a foil sticker for riders who finish. It's in your playground tray now, for good.