F2.03.3off-scale exceptions unravel spacingdesign

Off-scale exceptions unravel the system

Aliases: one-off padding · optical nudge · spacing exception

What it is

A glyph already carries empty pixels, so someone uses 13 px padding once as an optical nudge, and that screen looks right. The next person sees 13 and thinks it is allowed; the neighbouring button becomes 13. Then 15, 18, 22. The scale is never formally repealed. Nameless exceptions dilute it until nobody trusts it.

The wreck is the breeding, not the fact that 13 existed once.

Why it happens

A spacing scale is a coordination device: it tells the next author where the legal set is. An anonymous exception looks identical to a legal value in the inspector, so the next author cannot tell “optical special case” from “the scale is a hint.” The special case is copied, the legal set inflates in practice, and decision cost plus drift return — the reason the short list existed, hollowed out.

A named, scoped exception can live: iconOpticalNudge for one stroke-icon set, banned on text buttons. The name turns a spare pixel into a local waiver, and the scale still runs the everyday work.

Where it stops holding

One-off campaign pages and throwaway prototypes never claimed to join the system; there is nothing to unravel. The danger is the app shell, the shared kit, and components reused across screens. Optical compensation itself is sane, especially for type boxes and icon centres. What is not sane is letting the compensated number flow back into the general padding menu.

A one-person, few-screen product may not live long enough for breeding. The moment the component is copied a third time, the anonymous 13 starts walking.

Applying it

  • Name every exception, write which objects it may touch, and implement it as a dedicated property — not a 13 on generic padding.
  • On a new anonymous value, try snapping to the nearest step first. Only if that visibly drops a notch, open a named exception and say who must not use it.
  • How to check: list every off-scale space. For each, write “optical reason + allowed components + forbidden components.” If the reason will not write, or the value already sits on two unrelated components, delete it, snap those surfaces back, and compare. If nothing got worse, it was copied noise.

Related

  • Same group: F2.03.1 A short spacing scale cuts decisions and drift · F2.03.2 The base should divide common screen densities
  • Nearby: F2.05 Alignment · F6.08 Visual weight of icons · F2.06 Proximity grouping
  • Search terms: off-scale spacing · optical adjustment · spacing exception · one-off padding

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/F2.03.3