---
title: "emulateMedia([options]) | Grafana k6 documentation"
description: "Browser module: page.emulateMedia([options]) method"
---

# emulateMedia(\[options])

This method changes the CSS `@media type` through the `media` argument, and/or the `'prefers-colors-scheme'` media feature, using the `colorScheme` argument.

Expand table

| Parameter             | Type   | Default | Description                                                                                                        |
|-----------------------|--------|---------|--------------------------------------------------------------------------------------------------------------------|
| options               | object | `null`  |                                                                                                                    |
| options.colorScheme   | string | `''`    | Emulates `'prefers-colors-scheme'` media feature, supported values are `'light'`, `'dark'`, and `'no-preference'`. |
| options.media         | string | `''`    | Changes the CSS media type of the page. The only allowed values are `'screen'`, and `'print'`.                     |
| options.reducedMotion | string | `''`    | Emulates `'prefers-reduced-motion'` media feature, supported values are `'reduce'`, `'no-preference'`.             |

### Returns

Expand table

| Type            | Description                                         |
|-----------------|-----------------------------------------------------|
| `Promise<void>` | A Promise that fulfills when the media is emulated. |

### Example

JavaScript ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```javascript
import { browser } from 'k6/browser';

export const options = {
  scenarios: {
    browser: {
      executor: 'shared-iterations',
      options: {
        browser: {
          type: 'chromium',
        },
      },
    },
  },
};

export default async function () {
  const page = await browser.newPage();

  await page.goto('https://test.k6.io/browser.php');
  console.log(await page.evaluate(() => matchMedia('screen').matches)); // true
}
```
