Action buttons allow users to perform an action or mark a selection. They’re used for similar, task-based options within a workflow, and are ideal for interfaces where buttons aren’t meant to draw a lot of attention.
Action buttons should always have a label, unless they are only using an icon that is universally understood and accessible. They can have an optional icon, but it should not be used for decoration. Use an icon only when necessary and when it has a strong association with the label text.
The label can be hidden to create an icon-only action button. If the label is hidden, an icon is required, and the label will appear in a tooltip on hover.
Action buttons come in five different sizes: extra-small, small, medium, large, and extra-large. The medium size is the default and most frequently used option. Use the other sizes sparingly; they should be used to create a hierarchy of importance within the page.
By default, action buttons have a visible background. This style works best in a dense array of controls where the background helps to separate action buttons from the surrounding container, or to give visibility to isolated buttons.
Alternatively, quiet action buttons can have no visible background until they’re interacted with. This style works best when a clear layout (vertical stack, table, grid) makes it easy to parse the buttons. Too many quiet components in a small space can be hard to read.
An action button can have a selected state to allow for toggling — not only for taking a direct action. This can be used to disclose parts of an interface, such as for showing or hiding panels.
By default, action buttons are not emphasized. This is optimal for when an action button is not the core part of an interface, such as in application panels, where all the visual components are monochrome in order to direct focus to the content.
The emphasized action button has a blue background for its selected state in order to provide a visual prominence. This is optimal for when the selection should call attention, such as within a tool bar.
When an action button needs to be placed on top of a color background or a visual, use the static color option. Static color action buttons are available in transparencies, or in solid black or solid white, and don't change shades or values depending upon the color theme. Use static black on light color or image backgrounds, and static white on dark color or image backgrounds, regardless of the color theme.
Static color action buttons can appear in static white, regardless of color theme. The static color option allows for them to be placed on top of a custom background that is not part of a Spectrum color theme.
An action button can have a hold icon (a small corner triangle). This icon indicates that holding down the action button for a short amount of time can reveal a popover menu, which can be used, for example, to switch between related actions.
An action button in a disabled state shows that an action exists, but is not available in that circumstance. This state can be used to maintain layout continuity and to communicate that an action may become available later.
From the design point of view, each component has a number of options. These options and their names are platform agnostic, and each implementation should adapt these to fit into their framework.
yes / no
icon / nothing
Icon must be present if the label is not defined.
extra-small / small / medium / large / extra-large
yes / no
yes / no
yes / no
none / black / white
|selected text color|
|has hold icon|
yes / no
yes / no
When the action button text is too long for the available horizontal space, it truncates at the end. The full text should be revealed with a tooltip on hover.
An action button can be navigated using a keyboard. The keyboard focus state takes the button’s visual hover state and adds a blue ring to the button in focus.
Action buttons use the default arrow cursor for all states, including hover and down. The only exception occurs on the web; if the action button is using the
href property it will display the pointer cursor instead.
In Windows high contrast mode, action buttons should be displayed using the high contrast theme-specified colors for buttons. By default, borders and icons should be the same color as the button text color. Quiet action buttons do not have a border in default and disabled states. In hover and keyboard focus states, a border should display as the button border color. In the disabled state, border, icon, and text color should display as the disabled color.
Icon-only action buttons can be hard to identify. They should always show a tooltip upon hovering for a short period of time, displaying the name and possibly a keyboard shortcut.
If you have an icon-only or text-only isolated action button, use the standard style to make sure it’s more easily identifiable as a button.
When using a hold icon to switch actions, only group the actions that are part of the same family. Don't group unrelated actions just for the sake of saving space.
In left-to-right interfaces, the hold icon is always in the bottom right corner of the action button. It's a symbolic indicator that shows that a popover menu will appear on hold. Don't change the placement of the hold icon based on the design of the interface.
To ensure maximum contrast with the background, use static black for light backgrounds and images, and use static white for dark backgrounds and images. Avoid placing static components on top of busy images with a lot of variance in contrast.
The text color on the selected state of the over-background variant can be customized to match the background it’s on. Use the background color for selected text when the action button is on a solid color, and is dark enough to meet a 4.5:1 contrast ratio with a white background (or black background, for the static black variant).
Use black text when the button is on top of an image, or if the background is too low-contrast to meet the 4.5:1 contrast ratio.
For RTL (right-to-left) languages, the layout of the action button is mirrored. The icon is placed on the right side of the text and the hold icon is placed on the left side of the icon.
When an action button does not feature a hold icon:
|Space or Enter||Executes the action. The focus remains on the button except if the button opens or closes the current container. In this case, the focus moves to the target or back to the caller.|
When an action button features a hold icon:
|Enter||Executes the action. The focus remains on the button except if the button opens or closes the current container. In this case, the focus moves to the target or back to the caller.|
|Space||Opens the popover menu.|
|Alt + Down Arrow||Opens the popover menu.|
A theme is an intentional, systematic customization of Spectrum. It has unique visual attributes. For more information, view Theming.
Action buttons in Spectrum for Adobe Express have more rounding, higher contrast, and indigo accents for emphasized selection. Spectrum for Adobe Express also uses a different icon set.
|Aug 30, 2022||8.0.0|
|Apr 06, 2022||7.0.0|
|Feb 02, 2022||6.3.0|
|Jan 28, 2022||6.2.0|
|Jul 13, 2021||6.1.0|
|Sep 15, 2020||6.0.0|
|Feb 26, 2020||5.2.1|
|Aug 22, 2019||5.2.0|
|Aug 13, 2019||5.1.0|
|Jul 31, 2019||5.0.1|
|Apr 20, 2019||5.0.0|
Includes all interactive states that are applicable (hover, down, focus, keyboard focus, disabled).
Works properly across all four color themes (lightest, light, dark, darkest).
Includes a desktop scale (UWP, macOS, web desktop) and a mobile scale (iOS, Android, web mobile).
Color is not used as the only visual means of conveying information (WCAG 2.0 1.4.1).
Text has a contrast ratio of at least 4.5:1 for small text and at least 3:1 for large text (WCAG 2.0 1.4.3).
Visual information required to identify components and states (except inactive components) has a contrast ratio of at least 3:1 (WCAG 2.1 1.4.11).
UI language and information design considerations have been incorporated into component design.
Includes relevant options (variant, style, size, orientation, optional iconography, decorations, selection, error state, etc.)
Includes guidelines for keyboard focus, layout (wrapping, truncation, overflow), animation, interactions, etc.
Includes a list of dos and don'ts that highlight best practices and common mistakes.
Includes content standards or usage guidelines for how to write or format in-product content for the component.
Works properly across various locales and includes guidelines for bi-directionality (RTL).
Follows WCAG 2.0 standards for keyboard accessibility guidelines and includes a description of the keyboard interactions.
All design attributes (color, typography, layout, animation, etc.) are available as design tokens.
Includes a downloadable XD file that shows multiple options, states, color themes, and platform scales.
Includes a downloadable XD file, generated by code using design tokens defined in Spectrum DNA, and shows multiple options, states, color themes, and platform scales.
Component is included in the Spectrum for Adobe XD plugin.