Propriedade Cursor

Última atualização: 2026-09-13

cursor Propriedade Cursor

A propriedade cursor controla o formato do cursor exibido quando o ponteiro do mouse passa sobre um elemento e é uma pista visual importante para a interatividade. Ao escolher diferentes tipos de cursor — como pointer, text ou not-allowed —, você pode indicar aos usuários de relance se um elemento é clicável, arrastável ou desabilitado.

Categoria
Valor Inicialauto
HerdadoSim
Aplica-se Aall
Tipo de Animaçãodiscrete
Versão CSSCSS2
StatusPadrão

📝 Sintaxe

cursor: [ [ <url> [ <x> <y> ]? ]# , ]* [ auto | default | none | pointer | text | move | not-allowed | grab | grabbing | progress | wait | help | cell | crosshair | zoom-in | zoom-out | <cursor-keyword> ];

⚙️ Valores

ValorTipoDescrição
auto | default | pointer | text | move | wait | help | not-allowed | grab | grabbing | crosshairPalavra-chaveUm tipo de cursor predefinido
nonePalavra-chaveOculta o cursor

▶ Exemplo

Edite o código abaixo e veja o resultado ao vivo no playground:

🌐 Suporte dos Navegadores

Navegador ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
cursor v1 v12 v1 v1.2 v1
Suportado em todos os principais navegadores
Dica: pointer é o valor mais comum e sinaliza que um elemento é clicável. Defini-lo explicitamente em elementos interativos, como botões e links, melhora a usabilidade.
Dica: Uma imagem personalizada pode ser usada como cursor, por exemplo cursor: url(cur.cur), auto. Forneça sempre uma palavra-chave de fallback.

❓ Perguntas Frequentes

QÉ uma boa ideia usar cursor: none para ocultar o cursor do mouse no CSS?
ANa grande maioria dos casos, ocultar o cursor não é recomendado: os usuários perdem a noção de posição e o feedback de operação, e a acessibilidade sofre. Serve apenas para casos especiais, como apresentações em tela cheia, telas de jogos ou áreas já cobertas por um cursor personalizado. Se ocultá-lo, ofereça alternativas via teclado e evite páginas com muito texto.
QQual é a diferença entre os valores de cursor grab e grabbing?
Agrab mostra uma mão aberta e indica que um elemento pode ser arrastado, por isso geralmente é definido na origem do arraste. grabbing mostra um punho fechado, indicando um arraste ativo, e é ativado por JavaScript durante o arraste. Juntos, fornecem feedback de estado imediato para arrastar cards, sliders e outras interações orientadas por ponteiro.
QComo uso uma imagem personalizada como cursor do mouse em folhas de estilo CSS?
AEscreva cursor: url('cursor.png') 20 10, auto; — a url define o caminho da imagem, os dois números são as coordenadas do ponto ativo (onde os cliques são registrados) e o auto final é o cursor de fallback usado se a imagem falhar ao carregar, o qual deve ser mantido. Prefira arquivos .cur, .png ou .svg com no máximo 32x32 para melhor compatibilidade entre plataformas.
QPor que botões e links devem usar cursor: pointer em seus estilos CSS?
ABotões e links nem sempre exibem um cursor de mão por padrão — em alguns navegadores, os botões são renderizados com uma seta. Definir cursor: pointer explicitamente comunica a indicação de clicável e melhora a usabilidade e as taxas de cliques. Mas não exagere no uso: adicionar pointer a textos simples ou elementos não interativos faz os usuários acharem que são clicáveis.

📚 Tutoriais Relacionados

Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%