Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

124
Visualizações
¿Es posible acceder a un momento específico en la animación CSS?

Soy un principiante de frontend que estudia animaciones Javascript y CSS. Estoy tratando de hacer que un elemento parpadee según un ritmo (1 latido/segundo) y ya sincronicé el latido con el parpadeo. También me gustaría hacer que se pueda hacer clic en este elemento y actúe como un botón para llamar a una función cuando se presiona. Pero solo se debe poder hacer clic en este elemento al comienzo de la animación, cuando la opacidad aún es >= 0.8.
Intenté hacerlo con visibilidad (oculto/visible), pero no funcionó como esperaba. Así que lo estoy intentando ahora con opacidad. ¿Es posible?

Si especifico un porcentaje (como 20%) para cambiar la opacidad, ¿cuál sería la sintaxis para acceder al porcentaje? elemento.estilo.opacidad[??]

 // Javascript code: element.classList.add('blink'); // CSS code: .blink { animation-name: blink-animation; animation-duration: 1000ms; animation-timing-function: ease-in; animation-iteration-count: infinite; animation-fill-mode: forwards; } @keyframes blink-animation { from { opacity: 1; } to { opacity: 0; } }
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede controlar el parpadeo con transición y js en lugar de una animación de fotogramas clave. De esta manera, tiene un control más fino sobre el parpadeo y el tiempo de la música. También puede deshabilitar el botón cuando no esté en un estado "parpadeante".

Si tiene alguna pregunta, por favor pregunte.

 const btn = document.querySelector("button"); const wait = ms => new Promise(r => setTimeout(r, ms)); (async () => { while (true) { btn.classList.add("blink"); btn.disabled = false; await wait(1000); btn.classList.remove("blink"); btn.disabled = true; await wait(1000); } })(); btn.addEventListener("click", () => { console.log("clicked!"); });
 button { transition: box-shadow 0.2s, opacity 0.2s; opacity: 0.5; } button.blink { box-shadow: 0 0 3px 2px pink; opacity: 1; }
 <button disabled="true">Blinky</button>

about 4 years ago · Juan Pablo Isaza Relatório

0

Si desea hacerlo en css, use pointer-events: none para evitar que los usuarios interactúen con su elemento. Cuando la animación esté al 20% la opacidad será 0.8 ;

 @keyframes blink-animation { 0% { opacity: 1; } 20% { pointer-events: none; } 100% { opacity: 0; } }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda