मुझे नहीं लगता कि यह केवल सीएसएस एनिमेशन का उपयोग करके प्राप्त करने योग्य है। मैं यह मान रहा हूं कि सीएसएस संक्रमण आपके उपयोग के मामले को पूरा नहीं करते हैं, क्योंकि (उदाहरण के लिए) आप दो एनिमेशनों को एक साथ चेन करना चाहते हैं, कई स्टॉप्स, पुनरावृत्तियों का उपयोग करते हैं, या किसी अन्य तरीके से अतिरिक्त पावर एनिमेशन आपको फायदा देते हैं।
मैंने "ओवर" और "आउट" कक्षाओं को संलग्न करने के लिए जावास्क्रिप्ट का उपयोग किए बिना विशेष रूप से माउस-आउट पर सीएसएस एनीमेशन को ट्रिगर करने का कोई तरीका नहीं पाया है। यद्यपि आप आधार सीएसएस घोषणा ट्रिगर एनीमेशन का उपयोग कर सकते हैं: जब होवर समाप्त होता है, तो वही एनीमेशन तब पृष्ठ लोड पर चलेगा। "ओवर" और "आउट" कक्षाओं का उपयोग करके आप परिभाषा को आधार (लोड) घोषणा और दो एनीमेशन-ट्रिगर घोषणाओं में विभाजित कर सकते हैं।
इस समाधान के लिए सीएसएस होगा:
.class {
}
.class.out {
animation-name: out;
animation-duration:2s;
}
.class.over {
animation-name: in;
animation-duration:5s;
animation-iteration-count:infinite;
}
@keyframes in {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes out {
from {
transform: rotate(360deg);
}
to {
transform: rotate(0deg);
}
}
और घटनाओं के लिए वर्गों को बांधने के लिए जावास्क्रिप्ट (jQuery वाक्यविन्यास) का उपयोग करना:
$(".class").hover(
function () {
$(this).removeClass('out').addClass('over');
},
function () {
$(this).removeClass('over').addClass('out');
}
);