Padding
import { ApiTable } from "@/components/api-table.tsx"; import { CustomizingYourSpacingScale } from "@/components/content.tsx"; import { Example } from "@/components/example.tsx"; import { Figure } from "@/components/figure.tsx"; import { ResponsiveDesign } from "@/components/content.tsx"; import { Stripes } from "@/components/stripes.tsx"; import { UsingACustomValue } from "@/components/content.tsx";
export const title = "padding"; export const description = "Utilities for controlling an element's padding.";
${prefix}-<number>, ${property}: calc(var(--spacing) * <number>);],
[${prefix}-px, ${property}: 1px;],
[${prefix}-(<custom-property>), ${property}: var(<custom-property>);],
[${prefix}-[<value>], ${property}: <value>;],
])}
/>
Examples¶
Basic example¶
Use p-<number> utilities like p-4 and p-8 to control the padding on all sides of an element:
<!-- [!code classes:p-8] -->
<div class="p-8 ...">p-8</div>
Adding padding to one side¶
Use pt-<number>, pr-<number>, pb-<number>, and pl-<number> utilities like pt-6 and pr-4 to control the padding on one side of an element:
<!-- [!code classes:pt-6,pr-4,pb-8,pl-2] -->
<div class="pt-6 ...">pt-6</div>
<div class="pr-4 ...">pr-4</div>
<div class="pb-8 ...">pb-8</div>
<div class="pl-2 ...">pl-2</div>
Adding horizontal padding¶
Use px-<number> utilities like px-4 and px-8 to control the horizontal padding of an element:
<!-- [!code classes:px-8] -->
<div class="px-8 ...">px-8</div>
Adding vertical padding¶
Use py-<number> utilities like py-4 and py-8 to control the vertical padding of an element:
<!-- [!code classes:py-8] -->
<div class="py-8 ...">py-8</div>
Using logical properties¶
Use ps-<number> or pe-<number> utilities like ps-4 and pe-8 to set the padding-inline-start and padding-inline-end logical properties, which map to either the left or right side based on the text direction:
Left-to-right
Right-to-left
<!-- [!code classes:ps-8,pe-8] -->
<!-- [!code word:dir="ltr"] -->
<!-- [!code word:dir="rtl"] -->
<div>
<div dir="ltr">
<div class="ps-8 ...">ps-8</div>
<div class="pe-8 ...">pe-8</div>
</div>
<div dir="rtl">
<div class="ps-8 ...">ps-8</div>
<div class="pe-8 ...">pe-8</div>
</div>
</div>
For more control, you can also use the LTR and RTL modifiers to conditionally apply specific styles depending on the current text direction.
Use the pbs-<number> and pbe-<number> utilities to set the padding-block-start and padding-block-end logical properties, which map to either the top or bottom side based on the writing mode:
<!-- [!code classes:pbs-8] -->
<div class="pbs-8 ...">pbs-8</div>