🖱️Seletor :hover e propriedade transition

O seletor :hover aplica estilos ao passar o mouse sobre um elemento. Com transition, as mudanças ocorrem suavemente, criando interações visuais agradáveis e dinâmicas na página.

Introdução

Imagine que você está brincando com um interruptor de luz. Quando você passa a mão sobre ele, a luz muda de cor. No CSS, o seletor :hover funciona de forma parecida: ele aplica estilos especiais a um elemento quando o mouse passa por cima dele, criando uma resposta visual que indica interação.

Como funciona o :hover?

O :hover é um seletor CSS que altera o estilo de um elemento quando o cursor do mouse está sobre ele. Isso é muito útil para criar efeitos dinâmicos, como botões que mudam de cor ou links que ficam sublinhados quando o usuário passa o mouse por cima.

Exemplo Simples: Mudança de Cor de um Botão

Vamos dizer que você tem um botão na sua página, e quer que ele mude de cor quando alguém passa o mouse sobre ele.

button {
    background-color: blue; /* Cor padrão do botão */
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
}

button:hover {
    background-color: darkblue; /* Cor quando o mouse passa por cima */
}

Explicação:

  • Sem o mouse: O botão é azul claro.

  • Com o mouse sobre o botão: Ele muda para azul escuro, indicando que está "pronto para ser clicado".

Introduzindo a Propriedade transition

Agora, imagine que você quer que essa mudança de cor não seja instantânea, mas sim suave, como se o botão estivesse mudando de cor devagarinho. É aí que entra a propriedade transition.

O que é transition? A transition permite que você controle a velocidade e a suavidade das mudanças de estilo em um elemento. Usando nossa analogia, é como girar o interruptor da luz devagar, deixando a luz acender suavemente.

Usando transition com :hover

Vamos adicionar uma transição suave à mudança de cor do botão:

button {
    background-color: blue;
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease; /* Adiciona uma transição suave de 0.3 segundos */
}

button:hover {
    background-color: darkblue;
}

Explicação:

  • Sem transition: O botão mudaria de cor instantaneamente ao passar o mouse.

  • Com transition: A mudança de cor acontece suavemente em 0.3 segundos, tornando a interação mais agradável.

Outro Exemplo: Ampliando uma Imagem com :hover e transition

Vamos usar :hover e transition juntos para fazer uma imagem crescer suavemente quando o mouse passa sobre ela.

img {
    width: 200px;
    transition: transform 0.3s ease; /* Adiciona uma transição suave de 0.3 segundos */
}

img:hover {
    transform: scale(1.1); /* Aumenta a imagem em 10% quando o mouse passa */
}

Explicação:

  • Sem o mouse: A imagem aparece com tamanho normal.

  • Com o mouse sobre a imagem: Ela "cresce" suavemente, graças à transição, fazendo a imagem parecer que está se aproximando.

Conclusão

O seletor :hover é como um interruptor que ativa efeitos especiais quando o usuário passa o mouse sobre um elemento. A propriedade transition adiciona um toque de elegância a esses efeitos, fazendo com que as mudanças aconteçam de maneira suave e agradável. Juntos, :hover e transition tornam a experiência de navegação mais interativa e visualmente atraente, como se os elementos da página estivessem respondendo gentilmente ao toque do usuário.

Atualizado

Isto foi útil?