Layout & CSS Core A2 · Formal specification Platform: Web

Pseudo-class

A pseudo-class is part of a CSS selector. It finds an element by a condition, such as state, place, language, or user action.

See how it works
You might call it state selectorcolon selector

See how it works

Original worked examplePseudo-class

Another example

A form uses `:focus-visible` for keyboard focus. It uses `:user-invalid` after interaction and `:disabled` when submit is unavailable. Touch users do not get a hover style that sticks. Server errors stay as real DOM text, not only a pseudo-class style.

Main parts

  1. 01Colon-prefixed condition
  2. 02Matched element state
  3. 03Conditional declarations

Use it when

Use standard pseudo-classes for real browser states. Keep the state meaningful and give accessible feedback too.

Do not use it when

Do not store an important business state only in hover, focus, or position. It must survive changes in input method and DOM order.

Name used in code

:hover, :focus-visible, :checked, :disabled, :has(), :lang()

Before you ship

Check content order, shared design values, component consistency, contrast, zoom, and layout changes by screen size. Verify every theme, language, and state. If there is motion, offer an equal reduced-motion experience.

Request you can copy

Outcome: Use or define Pseudo-class to make the visual experience clear and easy to use. User context: A form uses `:focus-visible` for keyboard focus. It uses `:user-invalid` after interaction and `:disabled` when submit is unavailable. Touch users do not get a hover style that sticks. Server errors stay as real DOM text, not only a pseudo-class style. Design concept to apply: Pseudo-class. Why it fits: Use standard pseudo-classes for real browser states. Keep the state meaningful and give accessible feedback too. Do not use it when: Do not store an important business state only in hover, focus, or position. It must survive changes in input method and DOM order. Design requirements: Set the content order, shared design values, and reusable components. Define how the layout changes by screen size and state. Keep useful design choices separate from decoration. Inclusion and resilience: Check contrast, zoom, languages, themes, and reduced motion when needed. Do not use color or effects as the only way to show meaning. Acceptance criteria: The design stays clear on phones and desktops, at zoom, in every theme, and in all supported languages. Interactive states stay clear and consistent. Evidence and limits (evidence boundary): A formal document may still be a draft, release candidate, or final version. Check its status and browser or platform support. Unknowns to confirm: Brand limits, amount of content, supported themes and languages, target devices, and design-system rules.

Check this request

Review the current use of Pseudo-class. Definition: A pseudo-class is part of a CSS selector. It finds an element by a condition, such as state, place, language, or user action. Release checks: Check content order, shared design values, component consistency, contrast, zoom, and layout changes by screen size. Verify every theme, language, and state. If there is motion, offer an equal reduced-motion experience. Before changing code, report the evidence you found, gaps, severity, and the smallest safe fix.

A2
How official is this term?

Formal specification

A published, versioned formal specification defines this term for the listed technical scope.

A formal document may still be a draft, release candidate, or final version. Check its status and browser or platform support.

Scope
CSS pseudo-classes
Document status
draft
Checked on
2026-07-30

Evidence sources & scope

Authority source + Term reference · W3C CSS Working Group · draft Selectors Level 4 — Pseudo-classes Pseudo-classes Scope: CSS selectors, specificity, and pseudo-classes; direct scope: Pseudo-classes Role here: Direct term reference Source covers: canonical name, definition, semantics, implementation Authority source · W3C CSS Working Group · draft Selectors Level 4 Scope: CSS selectors, specificity, and pseudo-classes Role here: Authority within stated scope Source covers: canonical name, definition, semantics, implementation

Copy it yourself

The browser could not copy this. Select the request below and copy it yourself.