Style props are a way to alter the style of a component by simply passing props to it. It helps to save time by providing helpful shorthand ways to style components.
The following table shows a list of every style prop and the properties within each group.
| Prop | CSS Property | Theme Key | 
|---|---|---|
m, margin | margin | space | 
mt, marginTop | margin-top | space | 
mr, marginRight | margin-right | space | 
mb, marginBottom | margin-bottom | space | 
ml, marginLeft | margin-left | space | 
mx | margin-left and margin-right | space | 
my | margin-top and margin-bottom | space | 
p, padding | padding | space | 
pt, paddingTop | padding-top | space | 
pr, paddingRight | padding-right | space | 
pb, paddingBottom | padding-bottom | space | 
pl, paddingLeft | padding-left | space | 
px | padding-left and padding-right | space | 
py | padding-top and padding-bottom | space | 
| Prop | CSS Property | Theme Key | 
|---|---|---|
color | color | colors | 
bg, background | background | colors | 
bgColor | background-color | colors | 
opacity | opacity | none | 
| Prop | CSS Property | Theme Key | 
|---|---|---|
fontFamily | font-family | fonts | 
fontSize | font-size | fontSizes | 
fontWeight | font-weight | fontWeights | 
lineHeight | line-height | lineHeights | 
letterSpacing | letter-spacing | letterSpacings | 
textAlign | text-align | none | 
fontStyle | font-style | none | 
textTransform | text-transform | none | 
textDecoration | text-decoration | none | 
| Prop | CSS Property | Theme Key | 
|---|---|---|
w, width | width | sizes | 
h, height | height | sizes | 
minW, minWidth | min-width | sizes | 
maxW, maxWidth | max-width | sizes | 
minH, minHeight | min-height | sizes | 
maxH, maxHeight | max-height | sizes | 
d, display | display | none | 
boxSize | width, height | sizes | 
verticalAlign | vertical-align | none | 
overflow | overflow | none | 
overflowX | overflowX | none | 
overflowY | overflowY | none | 
Note: Props in
*will only work if you use theFlexcomponent.
| Prop | CSS Property | Theme Key | 
|---|---|---|
alignItems, *align | align-items | none | 
alignContent | align-content | none | 
justifyItems | justify-items | none | 
justifyContent, *justify | justify-content | none | 
flexWrap, *wrap | flex-wrap | none | 
flexDirection, flexDir, *direction | flex-direction | none | 
flex | flex | none | 
flexGrow | flex-grow | none | 
flexShrink | flex-shrink | none | 
flexBasis | flex-basis | none | 
justifySelf | justify-self | none | 
alignSelf | align-self | none | 
order | order | none | 
Note: Props in
*will only work if you use theGridcomponent.
| Prop | CSS Property | Theme Key | 
|---|---|---|
gridGap, *gap | grid-gap | space | 
gridRowGap, *rowGap | grid-row-gap | space | 
gridColumnGap, *columnGap | grid-column-gap | space | 
gridColumn, *column | grid-column | none | 
gridRow, *row | grid-row | none | 
gridArea, *area | grid-area | none | 
gridAutoFlow, *autoFlow | grid-auto-flow | none | 
gridAutoRows, *autoRows | grid-auto-rows | none | 
gridAutoColumns, *autoColumns | grid-auto-columns | none | 
gridTemplateRows, *templateRows | grid-template-rows | none | 
gridTemplateColumns, *templateColumns | grid-template-columns | none | 
gridTemplateAreas, *templateAreas | grid-template-areas | none | 
| Prop | CSS Property | Theme Key | 
|---|---|---|
background | background | none | 
bgImage, backgroundImage | background-image | none | 
bgSize, backgroundSize | background-size | none | 
bgPosition,backgroundPosition | background-position | none | 
bgRepeat,backgroundRepeat | background-repeat | none | 
bgAttachment,backgroundAttachment | background-attachment | none | 
| Prop | CSS Property | Theme Field | 
|---|---|---|
border | border | borders | 
borderWidth | border-width | borderWidths | 
borderStyle | border-style | borderStyles | 
borderColor | border-color | colors | 
borderTop | border-top | borders | 
borderTopWidth | border-top-width | borderWidths | 
borderTopStyle | border-top-style | borderStyles | 
borderTopColor | border-top-color | colors | 
borderRight | border-right | borders | 
borderRightWidth | border-right-width | borderWidths | 
borderRightStyle | border-right-style | borderStyles | 
borderRightColor | border-right-color | colors | 
borderBottom | border-bottom | borders | 
borderBottomWidth | border-bottom-width | borderWidths | 
borderBottomStyle | border-bottom-style | borderStyles | 
borderBottomColor | border-bottom-color | colors | 
borderLeft | border-left | borders | 
borderLeftWidth | border-left-width | borderWidths | 
borderLeftStyle | border-left-style | borderStyles | 
borderLeftColor | border-left-color | colors | 
borderX | border-left , border-right | borders | 
borderY | border-top , border-bottom | borders | 
| Prop | CSS Property | Theme Field | 
|---|---|---|
borderRadius | border-radius | radii | 
borderTopLeftRadius | border-top-left-radius | radii | 
borderTopRightRadius | border-top-right-radius | radii | 
borderBottomRightRadius | border-bottom-right-radius | radii | 
borderBottomLeftRadius | border-bottom-left-radius | radii | 
borderTopRadius | border-top-left-radius & border-top-right-radius | radii | 
borderRightRadius | border-top-right-radius & border-bottom-right-radius | radii | 
borderBottomRadius | border-bottom-left-radius & border-bottom-right-radius | radii | 
borderLeftRadius | border-top-left-radius & border-bottom-left-radius | radii | 
| Prop | CSS Property | Theme Field | 
|---|---|---|
pos,position | position | none | 
zIndex | z-index | zIndices | 
top | top | space | 
right | right | space | 
bottom | bottom | space | 
left | left | space | 
Text with shadows
| Prop | CSS Property | Theme Field | 
|---|---|---|
textShadow | text-shadow | shadows | 
boxShadow | box-shadow | shadows | 
| Prop | CSS Property | Theme Field | 
|---|---|---|
_hover | :hover,[data-hover] | none | 
_active | :active,[data-active] | none | 
_focus | :focus,[data-focus] | none | 
_highlighted | [data-highlighted] | none | 
_focusWithin | :focus-within | none | 
_focusVisible | :focus-visible | none | 
_disabled | [disabled],[aria-disabled=true],[data-disabled] | none | 
_readOnly | [aria-readonly=true],[readonly], [data-readonly] | none | 
_before | ::before | none | 
_after | ::after | none | 
_empty | :empty | none | 
_expanded | [aria-expanded=true],[data-expanded] | none | 
_checked | [aria-checked=true],[data-checked] | none | 
_grabbed | [aria-grabbed=true],[data-grabbed] | none | 
_pressed | [aria-pressed=true],[data-pressed] | none | 
_invalid | [aria-invalid=true],[data-invalid] | none | 
_valid | [data-valid],[data-state=valid] | none | 
_loading | [data-loading],[aria-busy=true] | none | 
_selected | [aria-selected=true],[data-selected] | none | 
_hidden | [hidden],[data-hidden] | none | 
_autofill | :-webkit-autofill | none | 
_even | :nth-of-type(even) | none | 
_odd | :nth-of-type(odd) | none | 
_first | :first-of-type | none | 
_last | :last-of-type | none | 
_notFirst | :not(:first-of-type) | none | 
_notLast | :not(:last-of-type) | none | 
_visited | :visited | none | 
_activeLink | [aria-current=page] | none | 
_indeterminate | :indeterminate,[aria-checked=mixed],[data-indeterminate] | none | 
_groupHover | `` | none | 
_groupFocus | `` | none | 
_groupActive | `` | none | 
_groupDisabled | `` | none | 
_groupInvalid | `` | none | 
_groupChecked | `` | none | 
_placeholder | ::placeholder | none | 
_fullScreen | :fullscreen | none | 
_selection | ::selection | none | 
Asides all the common style props listed above, all component will accept the following props:
| Prop | CSS Property | Theme Field | 
|---|---|---|
animation | animation | none | 
appearance | appearance | none | 
transform | transform | none | 
transformOrigin | transform-origin | none | 
visibility | visibility | none | 
whiteSpace | white-space | none | 
userSelect | user-select | none | 
pointerEvents | pointer-events | none | 
wordBreak | word-break | none | 
overflowWrap | overflow-wrap | none | 
textOverflow | text-overflow | none | 
boxSizing | box-sizing | none | 
cursor | cursor | none | 
resize | resize | none | 
transition | transition | none | 
objectFit | object-fit | none | 
objectPosition | object-position | none | 
objectPosition | object-position | none | 
float | float | none | 
fill | fill | colors | 
stroke | stroke | colors | 
outline | outline | none | 
as prop#The as prop is a feature that all of our components that allows you to pass an
HTML tag or component to be rendered.
For example, say you are using a Button component, and you need to make it a
link instead. You can compose a and Button like this:
This allows you to use all of the Button props and all of the a props
without having to wrap the Button in an a component.