any-pointer

Baseline Widely available

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

The any-pointer CSS media feature tests whether the user has any pointing device (such as a mouse), and if so, how accurate it is.

Note: If you want to test the accuracy of the primary pointing device, use pointer instead.

Syntax

The any-pointer feature is specified as a keyword value chosen from the list below.

none

No pointing device is available.

coarse

At least one input mechanism includes a pointing device of limited accuracy.

fine

At least one input mechanism includes an accurate pointing device.

Note: More than one value can match if the available devices have different characteristics, although none only matches when none of them are pointing devices.

Examples

This example creates a small checkbox for users with at least one fine pointer and a large checkbox for users with at least one coarse pointer. The big checkbox takes precedence because it is declared after the small one.

HTML

html
<input id="test" type="checkbox" /> <label for="test">Look at me!</label> 

CSS

css
input[type="checkbox"]:checked {   background: gray; }  @media (any-pointer: fine) {   input[type="checkbox"] {     appearance: none;     width: 15px;     height: 15px;     border: 1px solid blue;   } }  @media (any-pointer: coarse) {   input[type="checkbox"] {     appearance: none;     width: 30px;     height: 30px;     border: 2px solid red;   } } 

Result

Specifications

Specification
Media Queries Level 4
# any-input

Browser compatibility

See also