Problème :
La balise d'animation de SMIL est obsolète et les transitions de survol CSS doivent être implémenté pour le remplacer.
Solution :
Supprimez les balises définies et ajoutez du CSS à la pseudo-classe element_tpl:hover :
.element_tpl:hover {
stroke-opacity: 0.5;
}
Problème :
Animez l'élément pour le mettre à l'échelle plusieurs fois lors d'une modification validée.
Solution :
Considérez les options suivantes :
@keyframes scale-animation {
0% { transform: scale(1); }
50% { transform: scale(1.12); }
100% { transform: scale(1); }
}
Appliquez ensuite l'animation à l'élément :
.element_tpl {
animation: scale-animation 0.5s infinite alternate;
}
// Create a new animation
const animation = document.timeline.addAnimation();
// Define keyframes
const keyframes = [
{ transform: 'scale(1)', offset: 0 },
{ transform: 'scale(1.12)', offset: 0.5 },
{ transform: 'scale(1)', offset: 1 }
];
// Apply keyframes to the animation
animation.effect = keyframes;
// Target the element
animation.target = document.querySelector('.element_tpl');
Problème :
Animer l'élément pour l'agrandir et vers le bas en cliquant.
Solution :
.element_tpl {
transition: transform 0.2s;
}
.element_tpl:active {
transform: scale(1.1);
}
// Add event listener
document.querySelector('.element_tpl').addEventListener('click', (event) => {
// Create a new animation
const animation = document.timeline.addAnimation();
// Define keyframes
const keyframes = [
{ transform: 'scale(1)', offset: 0 },
{ transform: 'scale(1.1)', offset: 0.2 },
{ transform: 'scale(1)', offset: 0.4 },
];
// Apply keyframes to the animation
animation.effect = keyframes;
// Target the element
animation.target = event.target;
});
Problème :
Transférer les animations SMIL vers des animations CSS ou Web.
Solution :
Utilisez le polyfill SMIL créé par Eric Willigers : https://github.com/ericwilligers/svg-animation. Ce polyfill convertit les animations SMIL en animations Web, offrant ainsi un moyen alternatif de les implémenter.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3