Spacing

Utilities for controlling padding, margin, and space between child elements. All spacing values reference --spacing-* design tokens.

Scale Reference

The spacing scale used across padding, margin, and space utilities:

TokenValue
00
1var(--spacing-1)
2var(--spacing-2)
3var(--spacing-3)
4var(--spacing-4)
5var(--spacing-5)
6var(--spacing-6)
8var(--spacing-8)
10var(--spacing-10)
12var(--spacing-12)
16var(--spacing-16)
20var(--spacing-20)

Padding

All sides (p-*)

ClassCSS Property
p-0padding: var(--spacing-0)
p-1padding: var(--spacing-1)
p-2padding: var(--spacing-2)
p-3padding: var(--spacing-3)
p-4padding: var(--spacing-4)
p-5padding: var(--spacing-5)
p-6padding: var(--spacing-6)
p-8padding: var(--spacing-8)
p-10padding: var(--spacing-10)
p-12padding: var(--spacing-12)

Horizontal (px-*)

ClassCSS Property
px-0padding-inline: var(--spacing-0)
px-2padding-inline: var(--spacing-2)
px-3padding-inline: var(--spacing-3)
px-4padding-inline: var(--spacing-4)
px-5padding-inline: var(--spacing-5)
px-6padding-inline: var(--spacing-6)
px-8padding-inline: var(--spacing-8)

Vertical (py-*)

ClassCSS Property
py-0padding-block: var(--spacing-0)
py-1padding-block: var(--spacing-1)
py-2padding-block: var(--spacing-2)
py-3padding-block: var(--spacing-3)
py-4padding-block: var(--spacing-4)
py-6padding-block: var(--spacing-6)
py-8padding-block: var(--spacing-8)
py-12padding-block: var(--spacing-12)
py-16padding-block: var(--spacing-16)
py-20padding-block: var(--spacing-20)

Top & Bottom (pt-*, pb-*)

ClassCSS Property
pt-4padding-block-start: var(--spacing-4)
pt-8padding-block-start: var(--spacing-8)
pt-16padding-block-start: var(--spacing-16)
pb-4padding-block-end: var(--spacing-4)
pb-8padding-block-end: var(--spacing-8)

Example: Padding

p-6
<div class="p-6 bg-blue-100 rounded-lg">p-6</div>

Margin

ClassCSS Property
m-0margin: 0
m-automargin: auto
mx-automargin-inline: auto
my-0margin-block: 0
my-4margin-block: var(--spacing-4)
my-8margin-block: var(--spacing-8)
mt-0margin-block-start: 0
mt-1margin-block-start: var(--spacing-1)
mt-2margin-block-start: var(--spacing-2)
mt-4margin-block-start: var(--spacing-4)
mt-6margin-block-start: var(--spacing-6)
mt-8margin-block-start: var(--spacing-8)
mt-automargin-block-start: auto
mb-0margin-block-end: 0
mb-1margin-block-end: var(--spacing-1)
mb-2margin-block-end: var(--spacing-2)
mb-4margin-block-end: var(--spacing-4)
mb-6margin-block-end: var(--spacing-6)
mb-8margin-block-end: var(--spacing-8)
ms-automargin-inline-start: auto

Example: Centering with mx-auto

mx-auto max-w-sm
<div class="mx-auto max-w-sm bg-blue-100 rounded-lg p-4 text-center"> Centered with mx-auto </div>

Space Between

Add spacing between child elements using the space-* utilities. These apply margin to all children except the first.

ClassCSS Property
space-x-2> * + * { margin-inline-start: var(--spacing-2) }
space-x-4> * + * { margin-inline-start: var(--spacing-4) }
space-y-2> * + * { margin-block-start: var(--spacing-2) }
space-y-4> * + * { margin-block-start: var(--spacing-4) }

Example: Vertical spacing

Item 1
Item 2
Item 3
<div class="space-y-4"> <div>Item 1</div> <div>Item 2</div> <div>Item 3</div> </div>