Skip to content

Search

Start typing to search.


Show all pages

Documentation

feedback

Empty state

What people see, and can do, when a list or a page has nothing in it yet.

CSS onlyPlain classes; no JavaScript in any stack.

Usage

A title that says what is empty, a sentence on why it matters and one clear action.

No lessons planned this week

Plan a lesson and Sam gets the time on their phone right away.

HTML

Examples

No search results

Repeat the search term and offer ways forward instead of a bare "No results".

No students match “Jansn”

Check the spelling, or search by email address or phone number instead.

HTML

Guidance and accessibility

When to use

  • Use an empty state where a list, table or page has no content yet, or a search or filter finds nothing.
  • Offer one clear next action, such as “Plan a lesson”. Never leave people at “No results”.
  • For an error, use an alert; an empty state is for a valid situation.

Accessibility

  • The title is a heading at the level that fits the page outline, and the section is labelled by it.
  • Media is decoration: hide it with aria-hidden="true", or give it a text alternative if it adds meaning.
  • When the empty state appears after a search, announce the result count, for example in a role="status" element.

Classes

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

Classes of the empty-state component
ClassKindUse it for
ca-empty-stateComponentCentered column for the message and its action.
ca-empty-state__mediaPartAn optional icon or illustration above the title.
ca-empty-state__titlePartWhat is empty, as a heading.
ca-empty-state__descriptionPartWhy it is empty or what happens next.
ca-empty-state__actionsPartThe way forward; usually one button.

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.

No lessons planned this week

Plan a lesson and Sam gets the time on their phone right away.

Calaca skin

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

No lessons planned this week

Plan a lesson and Sam gets the time on their phone right away.

Proof skin

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

No lessons planned this week

Plan a lesson and Sam gets the time on their phone right away.

Crossview skin

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

No lessons planned this week

Plan a lesson and Sam gets the time on their phone right away.

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" />