Utilities for controlling the cursor style when hovering over an element.

Work in progress!

More detailed documentation is coming soon, but in the meantime here's a quick class reference.

Class reference

Class Properties
.cursor-auto cursor: auto;
.cursor-default cursor: default;
.cursor-pointer cursor: pointer;
.cursor-wait cursor: wait;
.cursor-move cursor: move;
.cursor-not-allowed cursor: not-allowed;



By default Tailwind provides six cursor utilities. You change, add, or remove these by editing the theme.cursor section of your Tailwind config.

// tailwind.config.js
module.exports = {
theme: {
cursor: {
      auto: 'auto',
      default: 'default',
      pointer: 'pointer',
-     wait: 'wait',
-     move: 'move',
      'not-allowed': 'not-allowed',
+     crosshair: 'crosshair',
+     'zoom-in': 'zoom-in',

Responsive and State Variants

By default, only responsive variants are generated for cursor utilities.

You can control which variants are generated for the cursor utilities by modifying the cursor property in the variants section of your tailwind.config.js file.

For example, this config will also generate hover and focus variants:

// tailwind.config.js
module.exports = {
variants: {
    // ...
-   cursor: ['responsive'],
+   cursor: ['responsive', 'hover', 'focus'],


If you don't plan to use the cursor utilities in your project, you can disable them entirely by setting the cursor property to false in the corePlugins section of your config file:

// tailwind.config.js
module.exports = {
corePlugins: {
    // ...
+   cursor: false,