Maison >interface Web >tutoriel CSS >Comment créer une info-bulle dynamique avec des effets de fondu entrant/sortant pour un élément Div ?
Considérez un élément div avec une étiquette et un champ de saisie :
<div> <label>Name</label> <input type="text"/> </div>
Comment créer une info-bulle qui apparaît lorsque les utilisateurs survolent l'élément div, avec un subtil effet de fondu entrant/fondu sortant ?
Pour les info-bulles de base qui affichent un message statique, vous pouvez utiliser l'attribut title :
<div title="This is my tooltip">
Cependant, pour les info-bulles avec du texte dynamique et des effets de fondu animés, une approche plus avancée est requise :
Voici un exemple utilisant JavaScript et CSS :
.tooltip { display: none; position: absolute; padding: 10px; color: white; border: 1px solid black; opacity: 0; transition: all 0.2s; } .tooltip.show { display: block; opacity: 1; }
// Create a tooltip element const tooltip = document.createElement('span'); tooltip.classList.add('tooltip'); // Add the event listener to the div const div = document.querySelector('div'); div.addEventListener('mouseover', (e) => { // Set the tooltip text tooltip.textContent = 'This is my tooltip'; // Position the tooltip tooltip.style.left = e.x + 'px'; tooltip.style.top = e.y + 'px'; // Add the tooltip to the body document.body.appendChild(tooltip); // Add the show class to the tooltip tooltip.classList.add('show'); }); div.addEventListener('mouseout', () => { // Remove the tooltip from the body document.body.removeChild(tooltip); });
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!