overflow
scroll-margin
Applies logical scroll-margin on a scroll item, growing the box the container aligns when it snaps to this item or an anchor jump targets it, so a sticky header clears only the items that need the extra room.
import { scrollMargin } from "@sdxc/u/overflow";Quick reference
Every documented call, beside the CSS it emits.
| Call | CSS |
|---|---|
u.scrollMargin(4) | css({ scrollMargin: "calc(var(--ui-spacing, 0.25rem) * 4)" }) |
u.scrollMargin(16, 0) | css({ scrollMarginBlock: "...", scrollMarginInline: "..." }) |
Using a custom value
Every scale argument also takes a raw CSS value, which passes through untouched.
u.scrollMargin("2.75rem")Applying on a state
Wrap the call in a state utility to scope it to one selector.
u.hover(u.scrollMargin(4))Responsive design
Wrap the call in a container query to scope it to one width.
u.at("md", u.scrollMargin(4))Customizing the theme
The custom properties this utility reads, which a theme redefines.
| Variable |
|---|
--ui-spacing |
Signature
u.scrollMargin(...values: SpacingValue[])