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.


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

No pointing device is available.
At least one input mechanism includes a pointing device of limited accuracy.
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.


This example creates a small checkbox for users with fine pointers and a large checkbox for users with coarse pointers.


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


input[type="checkbox"]:checked {
  background: gray;

@media (any-pointer: fine) {
  input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    width: 15px;
    height: 15px;
    border: 1px solid blue;

@media (any-pointer: coarse) {
  input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    width: 30px;
    height: 30px;
    border: 2px solid red;



Specification Status Comment
Media Queries Level 4
The definition of 'any-pointer' in that specification.
Candidate Recommendation Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support4112 No1 No289
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support414112 No1289.2 ?

1. See bug 1035774.

See also

Document Tags and Contributors

Last updated by: mfluehr,