Skip to main content

Button

TSX
<Button
href="https://example.com"
backgroundColor="#0879A1"
color="#ffffff"
hoverBackgroundColor="#065c79"
fontSize="14px"
fontWeight={500}
padding="12px 24px"
borderRadius="6px"
textAlign="center"
>
Get Started
</Button>
PropTypeDefault
textstring"Button" (or use children)
hrefstring | Href—
backgroundColorstring"#0879A1"
colorstring"#FFFFFF"
hoverBackgroundColorstring"#0879A1" (same as base — set explicitly for a visible hover)
hoverColorstring"#FFFFFF" (same as base)
fontSizestring"14px"
fontWeightnumber400
fontFamily{ label: string, value: string }—
lineHeightstring"120%"
paddingstring"10px 20px"
borderRadiusstring"4px"
textAlign"left" | "center" | "right""center"

href accepts a plain string (auto-wrapped) or { name: "web", values: { href, target } } if you need target control.

A note on textAlign: only <Heading> and <Paragraph> actually justify the rendered output (text-align: justify). <Button>, <Image>, and <Divider> accept the value at the type level but it has no visible effect, so their tables list only the three values that take effect.

Controlling Button Width​

Button width is controlled by the size value (default { autoWidth: true, width: "100%" }). For a fixed-width button, pass it via the values escape hatch:

<Button
href="https://example.com"
values={{ size: { autoWidth: false, width: '240px' } }}
>
Get Started
</Button>