1
resposta

Resolvendo box-shadow quando pressionado a tecla "Enter"

Eu tive o mesmo problema que o Ruan ao finalizar o projeto; quando selecionado a tecla usando enter a tecla não ficava com o mesmo efeito de quando pressionado com a tecla space ou pressionado com o mouse. Porém depois de reler algumas vezes o código acredito ter encontrado um erro no CSS da aula, nele temos:

.tecla.active:focus,
.tecla:active:focus {
  box-shadow: 3px 3px 0 var(--reflexo) inset, 1px 1px 10px var(--luz);
}

Porém não existe uma classe '.active', o correto seria usar a classe que criamos no JavaScript '.ativa'. Logo:

.tecla.ativa:focus,
.tecla:active:focus {
  box-shadow: 3px 3px 0 var(--reflexo) inset, 1px 1px 10px var(--luz);
}

Não sei dizer ao certo porque isso afetou somente o comportamento da tecla enter (se alguém puder esclarecer seria ótimo). Porém ao fazer essa alteração a tecla enter passa a ter o comportamento esperado.

PS: ignorem o nome das variáveis de cores pois eu alterei elas para personalizar o projeto e consequentemente alterei os nomes para ficar mais coerente :)

1 resposta

Olá Danielle, tudo certo?

Pedimos desculpa pela demora em responder.

Parabéns por ter conseguido solucionar o problema!

Sua pergunta é bem interessante! O comportamento dos botões tanto para o espaço quanto para o click do mouse ocorrem por serem o padrão em navegadores como Edge, Firefox e Chrome para efetuar uma ativação, sendo assim eles não precisam especificar o uso, porém, como em outras teclas estamos adicionando esse efeito manualmente por meio da "ativa", precisamos indicar no CSS e interligar com o comando do javascript.

Se precisar de ajuda conte conosco!

Tenha um bom dia e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓