Skip to content

No.198 · FAQ

Focus FAQ

An FAQ where choosing a question promotes it: it travels up and grows into the heading, its answer unfolds beneath, and every other question steps back into a compact list below.

The prompt

The design brief behind this component — reuse it to regenerate, remix, or explain it.

Design an FAQ where choosing a question promotes it rather than opening it in place. At rest: a mono eyebrow and a numbered list of questions set in Instrument Serif (clamp 1.3–1.65rem) with hairline rules and a small ↗ that nudges on hover. Choosing one re-lays the section: the chosen question becomes a large heading at the top (clamp 2–3.1rem), its answer fades up beneath (160ms after), with '← All questions'; the remaining questions become a compact sans list below ('more questions'). Make the transition physical with FLIP: before the state change, record every question's bounding box (data-flip keys); after React re-renders, animate each from its old box to its new one with translate + scale from the top-left (620ms, cubic-bezier(0.16,1,0.3,1)) — so the chosen question visibly travels up and grows into the heading while the others slide and shrink into the list. The eyebrow becomes 'Question 03 of 05'.

Notes

Interaction
Click a question to make it the subject; pick another from the compact list, or go back to all.
Motion
FLIP translate+scale 620ms expo-out on every question; answer and back link fade up with 160/260ms delays.
Accessibility
Questions are buttons in an ordered list; the focused question is a real heading; reduced motion swaps layouts instantly with no FLIP.
Responsive
Fluid to 44rem; headings scale with clamp().
On touch
Tap targets are full-width rows.

Featured

301 components