Skip to content

Buttons

Button tokens control the appearance of the Button and IconButton components.

Base Tokens

TokenValueDescription
--vuiii-button-fontSizevar(--vuiii-field-fontSize)Text size
--vuiii-button-fontFamilyvar(--vuiii-typeface-body)Font family
--vuiii-button-fontWeightnormalText weight
--vuiii-button-heightvar(--vuiii-field-height)Button height
--vuiii-button-paddingvar(--vuiii-field-padding)Horizontal padding
--vuiii-button-borderRadiusvar(--vuiii-field-borderRadius)Corner radius
--vuiii-button-borderWidthvar(--vuiii-field-borderWidth)Border thickness
--vuiii-button-ringSizevar(--vuiii-field-ringSize)Focus ring width
--vuiii-button-transitionvar(--vuiii-field-transition)Animation timing
--vuiii-button-opacity--disabledvar(--vuiii-field-opacity--disabled)Disabled state

Button Variants

Default

TokenValueDescription
--vuiii-button-bgColortransparentBackground
--vuiii-button-borderColorvar(--vuiii-button-bgColor)Border
--vuiii-button-textColorvar(--vuiii-color-primary)Text color
--vuiii-button-ringColorcolor-mix(in srgb, var(--vuiii-color-primary) 10%, transparent)Focus ring
--vuiii-button-bgColor--hovertransparentHover background
--vuiii-button-textColor--hovervar(--vuiii-color-primary--darker)Hover text

Primary

TokenValueDescription
--vuiii-button-bgColor--primaryvar(--vuiii-color-primary)Background
--vuiii-button-borderColor--primaryvar(--vuiii-button-bgColor--primary)Border
--vuiii-button-textColor--primarywhiteText color
--vuiii-button-ringColor--primarycolor-mix(in srgb, var(--vuiii-color-primary) 10%, transparent)Focus ring
--vuiii-button-bgColor--primary--hovervar(--vuiii-color-primary--darker)Hover background

Secondary

TokenValueDescription
--vuiii-button-bgColor--secondaryvar(--vuiii-color-gray--light)Background
--vuiii-button-borderColor--secondaryvar(--vuiii-button-bgColor--secondary)Border
--vuiii-button-textColor--secondaryvar(--vuiii-color-gray--darkest)Text color
--vuiii-button-ringColor--secondarycolor-mix(in srgb, var(--vuiii-color-gray--darker) 10%, transparent)Focus ring
--vuiii-button-bgColor--secondary--hovervar(--vuiii-color-gray)Hover background
--vuiii-button-textColor--secondary--hovervar(--vuiii-color-black)Hover text

Danger

TokenValueDescription
--vuiii-button-bgColor--dangervar(--vuiii-color-danger)Background
--vuiii-button-borderColor--dangervar(--vuiii-color-danger)Border
--vuiii-button-textColor--dangerwhiteText color
--vuiii-button-ringColor--dangercolor-mix(in srgb, var(--vuiii-color-danger) 10%, transparent)Focus ring
--vuiii-button-bgColor--danger--hovervar(--vuiii-color-danger--darker)Hover background

Success

TokenValueDescription
--vuiii-button-bgColor--successvar(--vuiii-color-success)Background
--vuiii-button-borderColor--successvar(--vuiii-color-success)Border
--vuiii-button-textColor--successwhiteText color
--vuiii-button-ringColor--successcolor-mix(in srgb, var(--vuiii-color-success) 10%, transparent)Focus ring
--vuiii-button-bgColor--success--hovervar(--vuiii-color-success--darker)Hover background

Size Variants

Small

TokenValue
--vuiii-button-fontSize--smallvar(--vuiii-field-fontSize)
--vuiii-button-height--smallvar(--vuiii-field-height--small)
--vuiii-button-padding--smallvar(--vuiii-field-padding--small)
--vuiii-button-borderRadius--smallvar(--vuiii-field-borderRadius--small)

Large

TokenValue
--vuiii-button-fontSize--largevar(--vuiii-field-fontSize--large)
--vuiii-button-height--largevar(--vuiii-field-height--large)
--vuiii-button-padding--largevar(--vuiii-field-padding--large)
--vuiii-button-borderRadius--largevar(--vuiii-field-borderRadius--large)

Customization

Create a custom button style:

css
:root {
  /* Rounded buttons */
  --vuiii-button-borderRadius: 9999px;

  /* Custom primary color */
  --vuiii-button-bgColor--primary: #0066cc;
  --vuiii-button-bgColor--primary--hover: #0052a3;
}

Released under the MIT License.