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.