MediaQueryListEvent: matches property

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The matches read-only property of the MediaQueryListEvent interface is a boolean value that is true if the document currently matches the media query list, or false if not.

Value

A boolean value; returns true if the document currently matches the media query list, false if not.

Examples

js
const para = document.querySelector("p"); // This is the UI element where to display the text
const mql = window.matchMedia("(max-width: 600px)");

mql.addEventListener("change", (event) => {
  if (event.matches) {
    // The viewport is 600 pixels wide or less
    para.textContent = "This is a narrow screen — less than 600px wide.";
    document.body.style.backgroundColor = "red";
  } else {
    // The viewport is more than 600 pixels wide
    para.textContent = "This is a wide screen — more than 600px wide.";
    document.body.style.backgroundColor = "blue";
  }
});

Specifications

Specification
CSSOM View Module
# dom-mediaquerylistevent-matches

Browser compatibility

BCD tables only load in the browser

See also