CSS Media features - any-hover



CSS media feature any-hover is used to detect the presence of any available input mechanism that can hover over elements. It is typically used to apply different styles or behaviors to elements based on whether the user's input device supports hovering or not.

This is particularly useful for creating responsive designs that adapt to the capabilities of the user's device.

Possible Values

The any-hover media feature can have the following values:

  • none − This value indicates that no pointing device is available that can hover over elements. In other words, the user's device doesn't support hover interactions.

  • hover − This value indicates that there is a pointing device available that can hover over elements. This means the user's device supports hover interactions, such as a mouse or a stylus.

Syntax

any-hover: none|hover;

CSS any-hover - none Value

The following example demonstrates that the @media (any-hover: none) media feature cannot change the appearance of a button when you hover over the button −

<html>
<head>
<style>
   button {
      padding: 10px;
      background-color: pink;
      border: none;
   }
   @media (any-hover: none) {
      button:hover {
         background-color: yellow;
         color: black;
      }
   }
</style>
</head>
<body>
   <h3>any-hover: none Example</h3>
   <button>Hover Me!</button>
</body>
</html> 

CSS any-hover - hover Value

The following example demonstrates that when you hover over the button, the color of the button change to yellow and the text become black −

<html>
<head>
<style>
   button {
      padding: 10px;
      background-color: pink;
      border: none;
   }
   @media (any-hover: hover) {
      button:hover {
         background-color: yellow;
         color: black;
      }
   }
</style>
</head>
<body>
   <h3>any-hover: hover Example</h3>
   <button>Hover Me!</button>
</body>
</html>
Advertisements