CSS Questions & Answers Logo
CSS Questions & Answers Part of the Q&A Network
Real Questions. Clear Answers.
Ask any question about CSS here... and get an instant response.
Q&A Logo Q&A Logo

How can I make an animation restart when the user clicks on an element?

Asked on Nov 09, 2025

Answer

To restart an animation when a user clicks on an element, you can use JavaScript to remove and re-add the class that triggers the animation. This effectively resets the animation.
<!-- BEGIN COPY / PASTE -->
    <style>
      .animate {
        animation: bounce 2s infinite;
      }
      
      @keyframes bounce {
        0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
        40% { transform: translateY(-30px); }
        60% { transform: translateY(-15px); }
      }
    </style>

    <div id="animatedElement" class="animate">Click me!</div>

    <script>
      const element = document.getElementById('animatedElement');
      element.addEventListener('click', () => {
        element.classList.remove('animate');
        void element.offsetWidth; // Trigger reflow
        element.classList.add('animate');
      });
    </script>
    <!-- END COPY / PASTE -->
Additional Comment:
  • The JavaScript snippet removes the "animate" class and immediately re-adds it to restart the animation.
  • The line "void element.offsetWidth;" is a trick to force a reflow, ensuring the class removal is processed before re-adding it.
  • This method works for CSS animations triggered by classes and is a common technique for restarting animations.
✅ Answered with CSS best practices.

← Back to All Questions

Q&A Network
The Q&A Network
CSS
Ask Questions / Get Answers about CSS!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
Film Production
Ask Questions / Get Answers about Film Production!
Security
Ask Questions / Get Answers about Website Security!
SEO
Ask Questions / Get Answers about SEO!
Robotics
Ask Questions / Get Answers about Robotics!
AI
Ask Questions / Get Answers about AI!
AI Audio
Ask Questions / Get Answers about AI Audio!
DevOps
Ask Questions / Get Answers about DevOps!
Data Science
Ask Questions / Get Answers about Data Science!
AI Images
Ask Questions / Get Answers about AI Images!
AI Coding
Ask Questions / Get Answers about AI Coding!
Web Languages
Ask Questions / Get Answers about Web Languages!
AI Design
Ask Questions / Get Answers about AI Design!
Quantum
Ask Questions / Get Answers about Quantum Computing!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
VR & AR
Ask Questions / Get Answers about VR & AR!
WordPress
Ask Questions / Get Answers about WordPress!
Web Hosting
Ask Questions / Get Answers about Hosting!
Web Development
Ask Questions / Get Answers about Web Development!
Tailwind
Ask Questions / Get Answers about Tailwind!
Analytics
Ask Questions / Get Answers about Analytics!
Photography
Ask Questions / Get Answers about Photography!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
HTML
Ask Questions / Get Answers about HTML!
Chatbots
Ask Questions / Get Answers about Chatbots!
AI Video
Ask Questions / Get Answers about AI Video!
AI Business
Ask Questions / Get Answers about AI Business!
AI Writing
Ask Questions / Get Answers about AI Writing!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
AI Education
Ask Questions / Get Answers about AI Education!
Video Editing
Ask Questions / Get Answers about Video Editing!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
Networking
Ask Questions / Get Answers about Networking!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
JavaScript
Ask Questions / Get Answers about JavaScript!
IoT
Ask Questions / Get Answers about IoT!
Performance
Ask Questions / Get Answers about Web Vitals!