Pebellslearn by building
0%
RoadmapsMatrixCoursesSandboxSign in
Creating Design Language  ›  Lesson

Buttons

Buttons 12 minButtons are ranked by emphasis, with one primary action per view and secondary, tertiary and destructive styles below it, and they are used for actions while links are used for navigation.

Buttons

Tiffinbox's checkout screen has four filled orange buttons: "Apply coupon", "Add tip", "Change address" and "Place order". They all shout equally loudly, so none of them stands out. Customers hesitate, and a few tap "Change address" by mistake. Buttons are the first component most systems define, because every screen has them and every screen needs them ranked.

The rule

One primary action per view; everything else steps down.

Thali defines four levels of emphasis:

  • Primary. Filled with the action colour. The single most important action in a view, such as "Place order". One per screen, or one per dialog or clearly separate panel.
  • Secondary. Outlined or lightly tinted. A real alternative that matters less: "Apply coupon".
  • Tertiary. Text only, lowest emphasis. Small actions such as "Change address" or "Add tip".
  • Destructive. Red, for actions that delete or cannot easily be undone. It usually leads to a confirmation step.

Every button also needs its states: default, hover, a clearly visible keyboard focus ring, pressed, loading and disabled. Its label follows the writing guidelines: a verb and a noun, in sentence case. Its size comes from the scale, and its tappable area meets touch-target guidance.

One structural rule matters as much as the looks: buttons do things; links go places. An action uses a button element. Moving to another page uses a link, even when it is styled like a button:

<button class="thali-button thali-button--primary">Place order</button>
<a class="thali-button thali-button--tertiary" href="/menu">Back to menu</a>

Screen readers announce the two differently, and keyboard users expect them to behave differently.

Be careful with disabled buttons. A greyed-out "Place order" with no explanation leaves people stuck. Either explain what is missing next to it, or keep it enabled and show a helpful message when it is pressed.

The shortcut

Ask "What is the one thing this screen is for?" That action gets primary. Rank the rest by how often people need them, and give each the next level down.

Ranking the checkout buttonsStep 1 of 5
  1. The one thing

    Checkout exists to place the order. "Place order" becomes primary.

Drills

Answer fast — trust the rule.

quick drill

How many primary buttons should a typical checkout screen have?

quick drill

A "View menu" control takes the user to another page. Which element should it be?

quick drill

Which level fits "Delete saved address"?

quick drill

"Place order" is disabled with no explanation. What is the problem?

Remember

  • One primary action per view; secondary, tertiary and destructive step down from it.
  • Shortcut: ask "what is the one thing this screen is for?" That action is primary; rank the rest below it.
  • Traps: several primary buttons fighting, links pretending to be buttons, and unexplained disabled buttons.

Practice — level up

0/1 solved

Write your answer, then compare it with a rubric and a model answer.

ExplainRank the order details screen

The order details screen has these actions: Track order, Contact rider, Get help, Cancel order and a way back to the home page. Assign each a button level or element and explain your choices.