Spacing
Tailwind's numeric step scale, used as-is. A number is a name that resolves to one fixed value, which makes it a closed set exactly like a t-shirt scale would be.
import from Tailwind --spacing
Numeric is still a closed set
The principle requires that a value come from a finite named set, not that the names be words.
mt-4 qualifies: 4 names one fixed value, and the only way out of the scale is the bracket —
mt-[13px] — which the lint gate blocks. The
wall against arbitrary values is the lint rule, not the naming style.
Name by intent only where a role actually recurs. A numeric step is right for one-off layout that has no reusable intent to name.
The scale
Reference
| Step | Value |
|---|---|
| 1 | 0.25rem |
| 2 | 0.5rem |
| 3 | 0.75rem |
| 4 | 1rem |
| 6 | 1.5rem |
| 8 | 2rem |
| 12 | 3rem |
| 16 | 4rem |
| 24 | 6rem |
| 32 | 8rem |
Reading measure
One named width caps line length: max-w-measure
(40.625rem). This paragraph is set to it. Long-form copy uses it, or the
measure prop on Body, which is the same value. There
is no second reading width and no arbitrary max-w-[40rem].
Target size
Interactive targets have a minimum size, and that is a constraint on the spacing scale rather than a separate checklist. A control smaller than the minimum is not a member of the set.