Maison > interface Web > tutoriel CSS > Création d'un bouton CTA interactif avec des animations avancées

Création d'un bouton CTA interactif avec des animations avancées

Linda Hamilton
Libérer: 2024-11-23 10:09:10
original
663 Les gens l'ont consulté

Dans cet article, nous expliquerons la création d'un bouton d'appel à l'action (CTA) moderne avec des animations élégantes et des effets dynamiques utilisant HTML, CSS et JavaScript. Ce bouton n'est pas qu'un simple élément d'interface utilisateur : c'est une pièce maîtresse interactive qui améliore l'engagement des utilisateurs et offre une expérience raffinée.

Caractéristiques du bouton

  • Transitions de dégradé dynamique : effets de survol accrocheurs avec changements de couleur.
  • Animations à l'échelle et à la rotation : mouvements subtils pour attirer l'attention.
  • Commentaires sur les clics : un effet de rétrécissement fluide lorsque vous cliquez dessus.
  • Indicateur de chargement : un message moderne « Redirection » avant la navigation.
  • Conception entièrement réactive : optimisée pour toutes les tailles d'écran.

Pourquoi se concentrer sur un bouton interactif ?

Les boutons sont un élément essentiel de toute interface Web. Qu'il s'agisse d'un formulaire d'inscription, d'une offre promotionnelle ou d'un appel à l'action pour votre jeu indépendant, un bouton bien conçu peut :

  • Augmentez l'engagement des utilisateurs.
  • Guider les visiteurs vers des actions spécifiques.
  • Rendez votre interface soignée et professionnelle.

Étape 1 : Structure HTML

Voici la structure de base de notre bouton. Le conteneur publicitaire contient le contenu et les graphiques, tandis que le bouton CTA constitue notre principal élément interactif.

<div>



<p>Step 2: CSS Styling<br>
The CSS brings the button to life with gradients, hover effects, and animations.<br>
</p>

<pre class="brush:php;toolbar:false">body {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  background: radial-gradient(circle at top, #141E30, #243B55);
  color: white;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.ad-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 25px;
  backdrop-filter: blur(15px);
  box-shadow: 0px 25px 60px rgba(0, 0, 0, 0.5);
  border: 2px solid rgba(255, 255, 255, 0.3);
  width: 90%;
  max-width: 1300px;
  animation: slideIn 1.5s ease-out;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.cta-button {
  display: inline-block;
  padding: 15px 35px;
  font-size: 1.2rem;
  font-weight: bold;
  text-transform: uppercase;
  color: white;
  text-decoration: none;
  background: linear-gradient(45deg, #ff416c, #ff4b2b);
  border-radius: 50px;
  box-shadow: 0px 10px 25px rgba(255, 65, 108, 0.5);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  animation: pulse 3s infinite alternate;
}

.cta-button:hover {
  transform: scale(1.15) rotate(2deg);
  box-shadow: 0px 15px 30px rgba(255, 65, 108, 0.7);
  filter: brightness(1.2);
}
Copier après la connexion

Points forts du CSS :

  • Effets de survol : le bouton évolue et pivote légèrement pour créer une interaction dynamique.
  • Arrière-plans dégradés : utilisez un dégradé linéaire pour un look moderne et dynamique.
  • Box Shadows : ajoutez de la profondeur au bouton avec des ombres superposées.

Étape 3 : Ajouter de l'interactivité avec JavaScript

JavaScript fournit des commentaires réactifs et une expérience utilisateur fluide.

const ctaButton = document.querySelector('.cta-button');

// Dynamic gradient change on hover
ctaButton.addEventListener('mouseover', () => {
  ctaButton.style.background = 'linear-gradient(90deg, #1e90ff, #00c6ff, #00ffa3)';
  ctaButton.style.boxShadow = '0px 15px 35px rgba(30, 144, 255, 0.6)';
  ctaButton.style.transform = 'scale(1.1) rotate(-2deg)';
  ctaButton.style.transition = 'all 0.3s ease';
});

// Reset on mouse out
ctaButton.addEventListener('mouseout', () => {
  ctaButton.style.background = 'linear-gradient(45deg, #ff416c, #ff4b2b)';
  ctaButton.style.boxShadow = '0px 10px 20px rgba(255, 65, 108, 0.5)';
  ctaButton.style.transform = 'scale(1) rotate(0deg)';
  ctaButton.style.transition = 'all 0.3s ease';
});

// Click action
ctaButton.addEventListener('click', () => {
  ctaButton.style.pointerEvents = 'none';
  ctaButton.style.transform = 'scale(0.95)';
  alert('Redirecting you to the game showcase page!');
  setTimeout(() => {
    window.location.href = 'https://gladiatorsbattle.com/indie-games';
  }, 1500);
});
Copier après la connexion

Démo en direct

Creating an Interactive CTA Button with Advanced Animations

Vous pouvez visionner une démo en direct sur CodePen pour voir le bouton en action. Jouez avec les styles et les animations pour vous l'approprier !

https://codepen.io/HanGPIIIErr/pen/WNVqOyq

Pourquoi c'est important

Un simple bouton n’est pas seulement un élément d’interface utilisateur : c’est une opportunité de faire bonne impression. Que vous fassiez la promotion d'un produit ou que vous dirigiez les utilisateurs vers une action spécifique, un bouton interactif et raffiné améliore l'expérience utilisateur et génère des conversions.

Faites la promotion de votre jeu indépendant !

Êtes-vous un développeur de jeux indépendant et souhaitez-vous présenter votre projet ? Consultez GladiatorsBattle.com pour une plate-forme gratuite sur laquelle vous pouvez télécharger votre jeu et vous connecter avec une communauté croissante. N'oubliez pas de rejoindre notre communauté Discord ici : https://discord.gg/YBNF7KjGwx.

Construisons ensemble une incroyable communauté de créateurs ! ?

Conclusion

Les éléments interactifs de l'interface utilisateur comme ce bouton CTA peuvent transformer l'apparence de votre site Web. N'hésitez pas à utiliser ce code, à le modifier et à vous l'approprier. Si vous avez des commentaires ou des améliorations, partagez-les dans les commentaires ci-dessous ! ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal