Limited support Use with care and confirm browser support before shipping it to all users.

Browser support

Feature Desktop Mobile
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
if
Experimental
137
137
137
1+Supported (version) Not supported Has note Sub-feature descriptions sourced from MDN Web Docs (CC BY-SA 2.5)

Syntax

CSS
.box {
  color: if(
    style(--theme: dark): white;
    else: black
  );
}

Live demo

--theme: dark

CSS --theme: dark demo.

PreviewFullscreen

--theme: light

CSS --theme: light demo.

PreviewFullscreen

Else (default)

CSS Else (default) demo.

PreviewFullscreen

Use cases

  • Use if()

    Use if() when the default CSS behavior is not expressive enough for the component or layout you are building.

  • Handle edge cases

    Apply if() to solve a specific styling constraint without introducing broader layout or behavior changes.

Cautions

  • Test if() in the browsers you support, especially if it changes layout, text handling, or interaction behavior.
  • Plan a fallback or acceptable degradation path when support is still limited.

Accessibility

  • Confirm that using if() does not make content harder to perceive, understand, or operate in assistive contexts.