Widely availableSupported across all major browsers. Safe to use in production.

Overview

The :focus-visible CSS pseudo-class selects elements that match the :focus pseudo-class and meets the browser's criteria for visually emphasizing focused elements.

Browser support

Feature Desktop Mobile
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
86
86
85
15.4
86
15.4
1+Supported (version) Not supported Has note Sub-feature descriptions sourced from MDN Web Docs (CC BY-SA 2.5)
Notes 1 item(s)
Implementation note
  • Previously available under a different name: :-moz-focusring (4)

Syntax

CSS
/* Hide the focus ring on mouse click */
button:focus:not(:focus-visible) {
  outline: none;
}

/* Custom focus ring only during keyboard navigation */
button:focus-visible {
  outline: 3px solid #2563eb;
  outline-offset: 2px;
}

Live demo

ki-bo-dfocus

:focus-visible ki-bo-dfocus demo.

PreviewFullscreen

Inputfield

:focus-visible Inputfield demo.

PreviewFullscreen

link. Focus

:focus-visible link. Focus demo.

PreviewFullscreen

Use cases

  • Using :focus-visible

    The :focus-visible CSS pseudo-class selects elements that match the :focus pseudo-class and meets the browser's criteria for visually emphasizing focused elements.

Cautions

  • May not be supported in older browsers.

Accessibility

  • Make sure visual changes are conveyed appropriately to assistive technology.

Powered by web-features