Skip to content

Search

Start typing to search.


Show all pages

Documentation

navigation

Stepper

Shows where people are in a process of a few steps, such as booking a lesson.

CSS onlyPlain classes; no JavaScript in any stack.

Usage

An ordered list in a <nav>. Each step has data-status; the current one also aria-current="step".

HTML

Examples

Vertical

ca-stepper--vertical puts the label beside the marker and has room for a description.

HTML

Guidance and accessibility

When to use

  • Use a stepper in a process of three to six steps that people go through in order, such as a booking or a sign-up.
  • Keep labels to one or two words.
  • For a process described on a marketing page, use the steps block.

Accessibility

  • Put the list in a <nav> with an aria-label, and mark the current step with aria-current="step".
  • The marker is decoration; hide it with aria-hidden="true". Say that a step is done in words, such as a visually hidden “(done)”.
  • State shows through the marker’s fill and the check, not color alone.
  • Make complete steps links when people may go back to them.

Classes

Generated from the component contract. Parts use __, modifiers use --.

Classes of the stepper component
ClassKindUse it for
ca-stepperComponentThe <ol> of steps. Add one layout.
ca-stepper__itemPartOne step, with data-status="complete", "current" or "upcoming".
ca-stepper__markerPartThe number, or a check when the step is complete. Leave it empty.
ca-stepper__labelPartThe name of the step.
ca-stepper__descriptionPartOptional detail, such as a date.
ca-stepper--horizontalLayoutSteps in a row that wraps.
ca-stepper--verticalLayoutOne step per row, label beside the marker.

Skins

The same markup, dressed by each skin. Structure and behavior stay the same; only the look changes.

Base skin

Neutral grayscale starting point; product skins extend it and change what differs.

Calaca skin

The Calaca UI brand: hueso paper and tinta ink, cempasúchil marigold, rosa and jade.

Proof skin

Pilot skin pushed far from base: square, heavy, offset shadows, larger targets.

Crossview skin

The CrossView proofing table: cool ground, bond-paper sheets, rule-grey hairlines, one red mark.

Framework notes

Link the prebuilt stylesheet of your skin next to your brand theme. No build step.

HTML
<link rel="stylesheet" href="theme.css" />
<link rel="stylesheet" href="ca-base.css" />