Morten A. Giraffe

Chapter I / Make it understandable

Contrast Should Explain What Is Different

Use contrast as a meaning system for text, state, action, focus, and separation.

All 18 rules4 min read
01Scenario

Start with the moment where the interface asks too much.

The pale gray interface looks refined in the mockup. In the meeting room it still looks expensive. Then someone opens it on an ordinary laptop near a window. Labels fade. Disabled and available controls look almost the same. Focus is hard to find. The design did not become less attractive. Its distinctions failed outside the artboard.

Contrast is a system for communicating difference: foreground, hierarchy, interactivity, state, and urgency. Color ratios are essential, but they are only one part of the work.

02Interface Lab

Show the failure and the correction.

The lab uses controlled markup instead of raster text so the lesson stays legible, accessible, and easy to revise.

Annotated screen

Rule 04

123
  1. 1Low-contrast labelsSecondary text falls below practical readability in real viewing conditions.
  2. 2Invisible focusKeyboard users can reach controls but cannot reliably see where focus is.
  3. 3Accent inflationThe brand color appears on decoration, status, and primary actions until priority disappears.
03Principle

Make the useful path easier.

Contrast jobs

Every contrast decision should have a job: legibility, hierarchy, affordance, state, focus, or separation. If one treatment carries unrelated meanings, the system is asking people to guess.

Color is not enough

Color can support meaning, but it should be paired with words, shape, position, iconography, underline, border, or programmatic state where the distinction matters.

Compliance is the floor

WCAG contrast checks are necessary for many text and component distinctions. They do not prove that the whole interface hierarchy is useful in context.

04Rebuild

Turn critique into a usable rule.

Remove

  • Low-contrast labels

    Secondary text falls below practical readability in real viewing conditions.

  • Invisible focus

    Keyboard users can reach controls but cannot reliably see where focus is.

  • Accent inflation

    The brand color appears on decoration, status, and primary actions until priority disappears.

Build

  • Reserve high attention

    Spend the strongest contrast on the next action, active state, focus, and critical feedback.

  • Use multiple cues

    Pair color with text, border, shape, position, or icon when the state matters.

  • Test outside comfort

    Check grayscale, bright light, zoom, reduced motion, and forced-color assumptions before trusting a polished mockup.

05Field Test

Use it on a real page.

Review the page in normal light, bright light, grayscale, and keyboard navigation.

  1. Step 1

    Identify every contrast job.

  2. Step 2

    Check text and control contrast against the site target.

  3. Step 3

    Remove color and inspect state meaning.

  4. Step 4

    Tab through the page and confirm focus remains visible.

Evidence
Use contrast results, screenshots, and keyboard notes.
Pass
Important meanings remain perceivable with more than one cue.
Fail
State, focus, or interactivity disappears when color or ideal conditions are removed.
06Use By Role

The rule should help the person making the next decision.

Business owner

Ask whether visitors can read and act on the page in ordinary conditions, not only whether the palette looks premium.

Designer

Document contrast jobs for text, controls, states, focus, and proof.

Developer

Use real contrast checks and preserve visible focus states when implementing custom controls.

Reviewer

Remove color and verify that links, selections, errors, and disabled states still make sense.

Maximum contrast everywhere can create glare and flatten hierarchy. The goal is sufficient distinction, not turning every surface into pure black against pure white.

07Checklist And FAQ

Check the page, then answer the doubt.

  • Text contrast is checked against the target standard.
  • Focus is visible and not obscured.
  • Links are not color-only.
  • Disabled states differ without looking broken.
  • The accent color is not spent on decoration.
  • Critical state changes use multiple cues.
Is WCAG contrast enough for usability?
No. It is a necessary baseline for many distinctions, but hierarchy, state clarity, and real context still need review.
Can a website have too much contrast?
Yes. Excessive contrast everywhere can cause glare and flatten priority. Use strong contrast where meaning needs it.
How should disabled buttons look?
They should be visually distinct, still understandable, and not confused with active or loading states.