Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Web APIs
  3. MediaQueryList

MediaQueryList

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⁩.

AMediaQueryList object stores information on amedia query applied to a document, with support for both immediate and event-driven matching against the state of the document.

You can create aMediaQueryList by callingmatchMedia() on thewindow object. The resulting object handles sending notifications to listeners when the media query state changes (i.e., when the media query test starts or stops evaluating totrue).

This is very useful for adaptive design, since this makes it possible to observe a document to detect when its media queries change, instead of polling the values periodically, and allows you to programmatically make changes to a document based on media query status.

EventTarget MediaQueryList

Instance properties

TheMediaQueryList interface inherits properties from its parent interface,EventTarget.

matchesRead only

A boolean value that returnstrue if thedocument currently matches the media query list, orfalse if not.

mediaRead only

A string representing a serialized media query.

Instance methods

TheMediaQueryList interface inherits methods from its parent interface,EventTarget.

addListener()Deprecated

Adds to theMediaQueryList a callback which is invoked whenever the media query status—whether or not the document matches the media queries in the list—changes. This method exists primarily for backward compatibility; if possible, you should instead useaddEventListener() to watch for thechange event.

removeListener()Deprecated

Removes the specified listener callback from the callbacks to be invoked when theMediaQueryList changes media query status, which happens any time the document switches between matching and not matching the media queries listed in theMediaQueryList. This method has been kept for backward compatibility; if possible, you should generally useremoveEventListener() to remove change notification callbacks (which should have previously been added usingaddEventListener()).

Events

The following events are delivered toMediaQueryList objects:

change

Sent to theMediaQueryList when the result of running the media query against the document changes. For example, if the media query is(width >= 400px), thechange event is fired any time the width of the document'sviewport changes such that its width moves across the 400px boundary in either direction.

Examples

This example creates aMediaQueryList and then sets up a listener to detect when the media query status changes, running a custom function when it does to change the appearance of the page.

js
const para = document.querySelector("p");const mql = window.matchMedia("(width <= 600px)");function screenTest(e) {  if (e.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";  }}mql.addEventListener("change", screenTest);

Note:You can find this example on GitHub (see thesource code, and also see itrunning live).

You can find other examples on the individual property and method pages.

Specifications

Specification
CSSOM View Module
# the-mediaquerylist-interface

Browser compatibility

See also

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp