Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CSS - Cursor Transition

Tags:

html

css

Is it possible to animate with a CSS transition the status of the cursor?

I've tried with this code but it is not working.

.test {
  cursor: default;
  width: 100px;
  height: 100px;
  background: red;
}

.test:hover {
  cursor: pointer;
  -moz-transition: cursor 500ms ease-in-out;
  -o-transition: cursor 500ms ease-in-out;
  -webkit-transition: cursor 500ms ease-in-out;
  transition: cursor 500ms ease-in-out;
}
<div class="test"></div>
like image 532
Alessio Avatar asked Feb 06 '23 10:02

Alessio


2 Answers

That is not possible with CSS alone. Transition only works on animatable properties; whereas cursor does not appear. For a full list of animatable props, please check here.

Please notice you may also put .gif for the .cursor element; bare in mind there are certain size restrictions that apply accordingly on different browsers.

like image 194
Juan Ferreras Avatar answered Feb 09 '23 20:02

Juan Ferreras


Cursor is not an animatable property and it would be kind of weird if it were to be honest. If you want to create an animation I would suggest creating a GIF that would start as default and end as pointer.

Then you can use that GIF as shown:

.test:hover {
    cursor: url("your-image.gif"), auto;
}
like image 44
Angel Politis Avatar answered Feb 09 '23 18:02

Angel Politis