La propiedad cursor en CSS controla cómo se verá el puntero del mouse cuando esté ubicado sobre el elemento en el que se establece esta propiedad.
Obviamente, solo es relevante en navegadores/sistemas operativos que tienen un mouse y puntero. Se utilizan esencialmente para la experiencia de usuario (UX) para transmitir la idea de cierta funcionalidad.
Tipos de cursor css
A continuación tienes una lista con los distintos valores disponibles para cambiar el cursor:
cursor: default
/* Muestra el cursor predeterminado del navegador. */.default {cursor: default;}
cursor: pointer
/* Cambia el cursor a una mano para indicar que el elemento es interactivo, como un enlace o un botón. */.pointer {cursor: pointer;}
cursor: progress
/* Cambia el cursor a una rueda giratoria para indicar que se está cargando algo. */.progress {cursor: progress;}
cursor: move
/*Cambia el cursor a una flecha con cuatro puntas para indicar que el elemento es movible.*/.move {cursor: move;}
cursor: context-menu
/* Cambia el cursor a un menú contextual para indicar que se puede hacer clic con el botón derechodel ratón para acceder a un menú de opciones. */.context-menu {cursor: context-menu;}
cursor: help
/* Cambia el cursor a un signo de interrogación para indicar que se puede obtener ayuda sobre el elemento. */.help {cursor: help;}
cursor: wait
/* Cambia el cursor a un reloj de arena para indicar que se está cargando algo y se debe esperar. */.wait {cursor: wait;}
cursor: crosshair
/* Cambia el cursor a una cruz para indicar que se puede seleccionar un área determinada. */.crosshair {cursor: crosshair;}
cursor: cell
/* Cambia el cursor a una flecha en diagonal para indicar que se puede cambiar el tamaño de la celda de una tabla. */.cell {cursor: cell;}
cursor: text
/* Cambia el cursor a un cursor de texto para indicar que se puede escribir texto en el elemento. */.text {cursor: text;}
cursor: vertical-text
/* Cambia el cursor a un cursor de texto vertical para indicar que se puede escribirtexto verticalmente en el elemento. */.vertical-text {cursor: vertical-text;}
cursor: alias
/* Cambia el cursor a una flecha doble en diagonal para indicar que el elemento es un alias o un enlace a otra página. */.alias {cursor: alias;}
cursor: copy
/* Cambia el cursor a una flecha con un símbolo de copiar para indicar que el elemento se puede copiar. */.copy {cursor: copy;}
cursor: no-drop
/*Cambia el cursor a un círculo con una línea diagonalpara indicar que el elemento no se puede soltar en ese lugar.*/.no-drop {cursor: no-drop;}
cursor: not-allowed
/* Cambia el cursor a un círculo con una barra diagonal para indicar que no se permite la interacción con el elemento. */.not-allowed {cursor: not-allowed;}
cursor: zoom-in
/* Cambia el cursor a una lupa para indicar que se puede hacer zoom para acercar el elemento. */.zoom-in {cursor: zoom-in;}
cursor: zoom-out
/* Cambia el cursor a una lupa con un signo menos para indicar que se puede hacer zoom para alejar el elemento. */.zoom-out {cursor: zoom-out;}
cursor: grab
/* Cambia el cursor a una mano con un agarre para indicar que se puede agarrar y arrastrar el elemento. */.grab {cursor: grab;}
cursor: grabbing
/* Cambia el cursor a una mano cerrada para indicar que se está agarrando y arrastrando el elemento. */.grabbing {cursor: grabbing;}
Personalizar el cursor con una imagen con css
Puedes agregar una imagen al cursor en formato .png, .svg o .cur, Nota: svg no es un formato reconocido por navegadores antiguos considera usar un .cur y un valor por defecto como fallback. en caso de que la imagen svg no cargue.
.custom {cursor: url("/images/image.svg"), url("/images/image.cur"), auto;}
Personalmente recomiendo imágenes .png con dimensiones pequeñas, son mejor reconocidas por los navegadores y tiene una buena resolución.
Soy Juneiker Castillo, un desarrollador web frontend apasionado por la programación y la creación de sitios web modernos rápidos y escalables, en fin un friki 🤓 de javascript enamorado de react js ⚛️.
Sobre mi