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
<input id="test" type="checkbox" /> <label for="test">Look at me!</label> 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> |