Swatch

Version 2.0.0

A swatch shows a small sample of a fill — such as a color, gradient, texture, or material — that is intended to be applied to an object.

Key example of four different medium-sized square swatches. Preview, solid magenta, default rounding. Preview, blue-green gradient preview, default rounding. Preview, nothing, no rounding. Preview, blue at 20% opacity on top of an opacity checkerboard, no rounding.
DateVersionSpectrumApr 06, 20222.0.0DownloadFeb 25, 20221.1.0DownloadApr 05, 20211.0.1DownloadJan 12, 20211.0.0Download

Options#

Key example of four different medium-sized square swatches. Preview, solid magenta, default rounding. Preview, blue-green gradient preview, default rounding. Preview, nothing, no rounding. Preview, blue at 20% opacity on top of an opacity checkerboard, no rounding.

Preview#

The preview shows the sample of the fill that the swatch represents. This property can be a color, gradient, texture, or material. The exact format this property takes will depend on implementation. Some examples of the format include color values, image, canvas, and gradient.

Key example of four square swatches showing the size options available including extra-small, small, medium, and large.

Size#

Swatches come in four different sizes: extra-small, small, medium, and 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.

Key example of two swatches showing the shape options available including square and rectangle.

Shape#

Swatches can have a square or a rectangle shape (aspect ratio of 2:1). The square shape is the default and is used in swatch groups (e.g., a palette of colors).

Key example of three swatches showing the corner rounding options available including none, default, and full rounding.

Corner rounding#

By default, swatches have default rounding. There are 3 options for a swatch’s rounding: none, default rounding, and full rounding.

Default rounding and full rounding are usually used when a swatch is presented by itself near other components. A rounding of “none” is used in a swatch group to help minimize the Hermann grid illusion that happens at the intersections of white space in the group.

Key example of two swatches showing its default state and selected state.

Selected#

A swatch can have a selected state to allow for selection. This is often used in a swatch group.

Key example of two swatches in their disabled state. This is the same as the default state, but with a cancel workflow icon in the center of each swatch.

Disabled#

A swatch in a disabled state shows that the swatch exists, but is not available in that circumstance. This state can be used to maintain layout continuity and to communicate that a swatch may become available later. Disabled swatches should be used with caution.

Table of options#

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.

PropertyValuesDefault Valuepreview
This will vary depending on implementation.
sizeextra-small / small / medium / largemediumshapesquare / rectanglesquarecorner roundingnone / default / fulldefaultis selectedyes / nonois disabledyes / nono

Behaviors#

Key example of a swatch in its keyboard focus state, with a blue ring applied around the swatch.

Keyboard focus#

A swatch can be navigated using a keyboard. The keyboard focus state adds a blue ring to the swatch in focus.

Key example of a swatch representing mixed values. A dash is applied to the center of the swatch shape.

Mixed value#

When a swatch represents multiple values that are not identical, the preview shows a gray-50 fill and a dash UI icon.

Usage guidelines#

Hide unavailable swatches when possible#

Even though swatches can have a disabled state, hiding unavailable swatches reduces visual clutter and eases cognitive load. Only show disabled swatches if hiding them would cause confusion to your users.

Keyboard interactions#

KeyInteractionSpace or EnterTriggers an action or selects the swatch when selection is enabled. The focus remains on the swatch, unless the swatch opens or closes the current container. In this case, the focus moves to the target or back to the caller.

Changelog#

DateNumberNotesApr 06, 20222.0.0
  • Updated all colors to 6.0.0
Feb 25, 20221.1.0
  • Added mixed value behavior
Apr 05, 20211.0.1
  • Added border to all swatches (removed low contrast swatch)
  • Updated border opacity to be more accessible
Jan 12, 20211.0.0
  • This component has been added to the website

Design checklist#

check

All interactive states

Includes all interactive states that are applicable (hover, down, focus, keyboard focus, disabled).

unchecked

All color themes

Works properly across all four color themes (lightest, light, dark, darkest).

check

All platform scales

Includes a desktop scale (UWP, macOS, web desktop) and a mobile scale (iOS, Android, web mobile).

check

Accessible use of color

Color is not used as the only visual means of conveying information (WCAG 2.0 1.4.1).

N/A

Accessible contrast for text

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).

check

Accessible contrast for UI components

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).

check

Content design

UI language and information design considerations have been incorporated into component design.

check

Defined options

Includes relevant options (variant, style, size, orientation, optional iconography, decorations, selection, error state, etc.)

check

Defined behaviors

Includes guidelines for keyboard focus, layout (wrapping, truncation, overflow), animation, interactions, etc.

check

Usage guidelines

Includes a list of dos and don'ts that highlight best practices and common mistakes.

N/A

Writing guidelines

Includes content standards or usage guidelines for how to write or format in-product content for the component.

N/A

Internationalization guidelines

Works properly across various locales and includes guidelines for bi-directionality (RTL).

check

Keyboard interactions

Follows WCAG 2.0 standards for keyboard accessibility guidelines and includes a description of the keyboard interactions.

unchecked

Design tokens

All design attributes (color, typography, layout, animation, etc.) are available as design tokens.

check

UI kit

Includes a downloadable XD file that shows multiple options, states, color themes, and platform scales.

unchecked

Generated UI kit

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.

unchecked

In Spectrum for Adobe XD plugin

Component is included in the Spectrum for Adobe XD plugin.