returns a new
MediaQueryList object that can then be used to determine if
document matches the media query string,
as well as to monitor the document to detect when it matches (or stops matching) that
MediaQueryList object for the media query. Use this object's
properties and events to detect matches and to monitor for changes to those matches over
You can use the returned media query to perform both instantaneous and event-driven checks to see if the document matches the media query.
To perform a one-time, instantaneous check to see if the document matches the media
query, look at the value of the
property, which will be
true if the document meets the media query's
If you need to be kept aware of whether or not the document matches the media query at
all times, you can instead watch for the
change event to be delivered to the object. There's a good example of this
in the article on
This example runs the media query
(max-width: 600px) and displays the
value of the resulting
matches property in a
<span>; as a result, the output will say "true" if the viewport is less
than or equal to 600 pixels wide, and will say "false" if the window is wider than that.
let mql = window.matchMedia("(max-width: 600px)");
document.querySelector(".mq-value").innerText = mql.matches;
matchMedia() to compile it, then sets the
innerText to the value of the results'
matches property, so that it indicates whether or
not the document matches the media query at the moment the page was loaded.
<span> to receive the output.
See Testing media queries programmatically for additional code examples.
|CSSOM View Module
BCD tables only load in the browser