Skip to content

Link

Links are interactive text elements that can be used to navigate users to other pages or resources or perform actions as a button.

Ready to use

Links allow users to navigate between pages, sections, or external resources while remaining visually distinguishable within content. They are used for actions that change context rather than trigger in-page processes. The component supports two types — Inline (embedded within running text) and Standalone (used independently as a navigational element) — and is fully responsive across all viewports.

  1. Link
  2. Label
  3. Icon

Use a Link when:

  • The action takes the user to another page, section, or external resource.
  • The placement is inline or rich text (within editorial or CMS-managed content).
  • A lightweight navigational element fits better than a button.

Avoid a Link when:

  • The action is interactive or transactional (submit, save, confirm) — use the main Button instead.
  • The action triggers an in-page change — buttons are the right primitive.
  • Mixing Buttons and Links inside the same action group would muddy hierarchy.

Type

Two types: Inline is embedded inside running text and inherits the surrounding typography; Standalone is used independently as a navigational element and ships with predefined size and padding tokens.

State

Neutral, Rested, Hover, Active, Visited, and Focus. Focus uses a 2 px outline so the link stays reachable from the keyboard even when it shares typography with surrounding text.

Size

Three sizes — Large (default for standalone links), Medium (compact layouts and side panels), Small (inline links inside captions or metadata, inheriting parent text size). Inline links always inherit the paragraph’s text style; standalone links use the predefined typographic token.

Contrast

A boolean that flips the link’s colour set for use over dark imagery or high-contrast surfaces. Pair it with the contrast scheme on the surrounding container so the visited and rested colours stay coherent.

Icon

Optional leading or trailing icon. Default true on standalone links to signal direction (chevron right for “Discover”, external link for “Open in new tab”). Decorative icons must be marked aria-hidden="true".

Desktop

Inline links remain visually distinguishable through colour and underline while inheriting the paragraph typography. Standalone links carry internal padding so the touch target meets the 24×24 minimum even at the large size.

Tablet

Same behaviour as desktop — touch and pointer both work. Keep the recommended 44×44 px tap area in mind when packing several standalone links together.

Mobile

Lean on the standalone variant for any navigational element that isn’t sitting inside running text. The inherited inline size shouldn’t drop below the surrounding paragraph or readers will lose the link entirely.

Treat links as the navigational primitive — anything that changes the page, not the state.

Do

Keep link text scannable and contextual, use links for navigation rather than form submissions or in-page actions, and always indicate when a link opens a new tab or takes the user to an external site.

Don't

Don’t write generic link text like “click here” or “read more”, don’t use links to trigger JavaScript actions (use buttons), and don’t remove or weaken focus indicators in ways that make links hard to identify.

Make every link describe its destination — “Discover the new Yaris” beats “Click here”, “Download the brochure” beats “Read more”. Use sentence case, skip terminal punctuation, and signal external destinations or new tabs in the label itself so screen-reader users hear the cue even before the announcement. Keep inline links short enough to fit on a single line within their paragraph; standalone links can carry a leading verb to reinforce the action.