The button element is used to allow users to action tasks and navigate between states or pages throughout the interface.
Adding a new button to your designs? Read our guide on
writing button microcopy.
Anatomy
Anatomy summary lists and describes all the elements that exist within a component (including other components nested within).
Label
For best practices on creating concise, actionable labels that match our guidelines, read Microcopy Patterns → Button
Variants
Variants contain different versions of the component depending on specific properties, such as state, size, colour, optional iconography, etc.
Button
size
Variant
|
medium | small
|
medium
|
state
Variant
|
default | hover | pressed | disabled
|
default
|
iconLeading
Boolean
|
true | false
|
true
|
showExpandCollapseIcon
Boolean
|
true | false
|
false
|
label
Text
|
string
|
Label
|
variant
Variant
|
primary | secondary | tertiary | neutral | quiet | loud | inverse | destructive
|
primary
|
labelVisibility
Boolean
|
true | false
|
true
|
Button
size
small
state
pressed
variant
secondary
Button
size
medium
state
pressed
variant
tertiary
Button
size
medium
state
pressed
variant
loud
Button
size
small
state
hover
variant
quiet
Button
size
medium
state
pressed
variant
secondary
Button
size
medium
state
disabled
variant
destructive
Button
size
medium
state
default
variant
loud
Button
size
medium
state
disabled
variant
quiet
Button
size
medium
state
default
variant
destructive
Button
size
medium
state
disabled
variant
inverse
Button
size
small
state
default
variant
secondary
Button
size
medium
state
disabled
variant
tertiary
Button
size
small
state
default
variant
destructive
Button
size
small
state
disabled
variant
loud
Button
size
small
state
hover
variant
loud
Button
size
medium
state
default
variant
tertiary
Button
size
medium
state
hover
variant
inverse
Button
size
medium
state
pressed
variant
neutral
Button
size
small
state
default
variant
quiet
Button
size
medium
state
pressed
variant
quiet
Button
size
small
state
pressed
variant
quiet
Button
size
small
state
default
variant
tertiary
Button
size
small
state
hover
variant
tertiary
Button
size
medium
state
disabled
variant
loud
Button
size
medium
state
hover
variant
destructive
Button
size
small
state
pressed
variant
destructive
Button
size
small
state
default
variant
inverse
Button
size
small
state
hover
variant
inverse
Button
size
medium
state
hover
variant
primary
Button
size
small
state
disabled
variant
destructive
Button
size
medium
state
pressed
variant
destructive
Button
size
medium
state
default
variant
inverse
Button
size
small
state
hover
variant
destructive
Button
size
small
state
disabled
variant
inverse
Button
size
medium
state
pressed
variant
inverse
Button
size
small
state
pressed
variant
inverse
Button
size
small
state
default
variant
loud
Button
size
medium
state
hover
variant
loud
Button
size
small
state
pressed
variant
loud
Button
size
medium
state
default
variant
neutral
Button
size
small
state
default
variant
neutral
Button
size
medium
state
disabled
variant
neutral
Button
size
small
state
disabled
variant
neutral
Button
size
medium
state
hover
variant
neutral
Button
size
small
state
hover
variant
neutral
Button
size
small
state
pressed
variant
neutral
Button
size
medium
state
default
variant
primary
Button
size
small
state
default
variant
primary
Button
size
medium
state
disabled
variant
primary
Button
size
small
state
disabled
variant
primary
Button
size
small
state
hover
variant
primary
Button
size
medium
state
pressed
variant
primary
Button
size
small
state
pressed
variant
primary
Button
size
medium
state
default
variant
quiet
Button
size
small
state
disabled
variant
quiet
Button
size
medium
state
hover
variant
quiet
Button
size
medium
state
default
variant
secondary
Button
size
medium
state
disabled
variant
secondary
Button
size
small
state
disabled
variant
secondary
Button
size
medium
state
hover
variant
secondary
Button
size
small
state
hover
variant
secondary
Button
size
small
state
disabled
variant
tertiary
Button
size
medium
state
hover
variant
tertiary
Button
size
small
state
pressed
variant
tertiary
Component dependencies
This component is internally dependent on the following components:
Recommended reading
Other documentation that will help guide your thinking when working with this component.
Help and support