Dimension
A distance: spacing, radii, sizes, border widths and text metrics.
Partial: rem values cannot be mapped to Figma variables. Applying to layers works for both units.
Value format
{ "$type": "dimension", "$value": { "value": 16, "unit": "px" } }| Field | Allowed |
|---|---|
value |
Any finite number, including negative |
unit |
"px" or "rem" |
A string such as "16px" is refused as $value. em, %, vh, pt and other units are refused, because DTCG defines only these two.
In Syntope Tokens
| You type | Stored as |
|---|---|
16px |
16, px |
1.5rem |
1.5, rem |
16 |
16, px. A bare number is pixels |
-2px |
-2, px |
{space.md} |
A reference |
Applying to layers
Apply token offers the groups sizing, border radius, border width, spacing, typography and effects. Apply targets lists each target.
- Figma has no root font size, so a
remvalue is multiplied by 16 when applied.1.5remsets 24. The base is fixed. The stored token keepsrem. - letter spacing and line height are set in pixels.
- offset X, offset Y, blur radius and spread change the first drop or inner shadow. Add a shadow in Figma first, or apply a shadow token. spread has layer requirements when it is not zero.
- A negative value is not applied to a radius, a border width, counter axis spacing or blur radius. A font size below 1 and a minimum or maximum size of 0 or less are not applied either. Use a value in range.
- A size change on a layer inside an instance is reported as not applied. Change it on the main component.
- A dimension cannot be applied to opacity or rotation. Use a number token.
Figma variables
px values map to FLOAT variables. A rem value is left out of the sync with the reason “Figma number variables use pixels, so this rem value was skipped. Use a px value to sync it.”
For tokens you map to variables, use px. A rem token still applies to layers directly.
