A section's art slot whose blocks build as the section scrolls in: each block comes from 2.5 units above its seat, turned 20 degrees, and lands in seat order. Scroll back and it takes itself apart. It only ever moves inside its own slot.
Example#
Usage#
Use build on scroll for an arrangement that assembles block by block as its section scrolls into view: a process section, a "how we build" moment. It is driven by the scroll position, never by a scroll handler, and never moves reading text.
- View timelines run it where the browser has them; elsewhere the reveal runtime plays the same build once over 900 ms.
- In an art slot that clips its blocks; never behind words.
Layer and volume#
Art in a section's art slot. The same build at Studio, Press and Rave; at Quiet it is simply built.
Anatomy#
- SlotThe art slot the build fills.
.mk-build - BlockEach lands in turn.
.mk-block-front
Volume#
Quiet
Studio
Press
Rave
Content#
- The build is art; the section's text says what it shows.
Do and don't#
Do
Don't
A section that pins the page and makes visitors scroll through the build before they can read on.
Fidelities#
CSS 3D on the slot's view timeline (animation-timeline: view()). Where view timelines are missing (Firefox), the reveal runtime plays the same build once, over 900 ms, when the slot comes into view.
Performance#
Zero JavaScript of its own; transform-only motion driven by the scroll position, never by a scroll handler.
Gating#
Reduced motion, Quiet and a page without the motion runtime show the built arrangement at once. Never put it behind words: the slot clips its blocks, but the slot itself is art.
Accessibility#
aria-hiddenart; describe the arrangement in the section's text if it matters.- No scroll-jacking: reading text never moves with the scroll.
Props#
| Prop | Type | Default | Description |
|---|---|---|---|
arrangement | ArrangementName | logo | Default `logo`. |
size | string | number | 48 | Block size (`--mk-s`, default 48). |
className | string | none |
Tokens#
System tokens (15)
--mk-3d-a-fill--mk-3d-k-fill--mk-3d-key--mk-3d-lead-fill--mk-3d-m-fill--mk-3d-r-fill--mk-3d-shadow--mk-3d-support-fill--mk-3d-wood-fill--mk-ease-fall--mk-volume--mk-w-press--mk-w-quiet--mk-w-rave--mk-w-studio
Its own properties (2)
--mk-3d-print--mk-s
Changelog#
Arrived in 0.9.0.
- Three: the alphabet twins at every fidelity (model, SVG, CSS 3D, GL geometry, physics shapes; Rave's MORE BLOCKS rains them), the
row,topple,twins,stack-1/2/3,line-k/r/a/mandwoodarrangements with their text alternatives, the page objectsCrate,PlanPlate,Slot,SampleCaseandBaseplate,BlockLoader,Topple404,BuildOnScroll, the house camera and an id-colour parity mode in poster frames, the wood grain in GL, specks and Shake, the phone's tap-to-play light rung with "Done", andInkFieldMaterial(the field backdrop in the stage's own canvas). Read the whole entry