Content blocks
Columns
The column list: 2–5 side-by-side columns separated by 46px gutters, each holding any blocks.
Left
First column content.
Right
Second column content.
Usage
- Use Columns to place related content side by side (comparisons, text next to an image).
- Keep to 2–3 columns for text; more columns get narrow quickly.
- Columns do not stack on narrow screens; avoid them for content that must read well on phones.
- Don’t use Columns for page layout or app chrome; use the layout primitives (
Stack,Grid) instead.
Installation
Install the package (React 19):
terminal
terminal
terminal
Import the styles once, in your app entry or root layout:
/src/main.tsx
Use it anywhere inside your app's <Theme> (see Installation):
/src/ColumnsExample.tsx
Examples
Ratios
ratios sets each column’s share of the width (sum 1).
70% column
30% column
Three columns from a block tree
One
Two
Three
API Reference
Columns
Based on <div> and supports its props. Adds:
| Prop | Type | Default |
|---|---|---|
children | ReactNode | |
ratios | number[] | equal |
Accessibility
- Columns are plain layout; reading order follows the DOM (left to right, then top to bottom).
- There is no responsive stacking; columns stay side by side.
© 2026 Motion. Internal documentation.