keyframes का उपयोग करके, डीओएम में जितनी जल्दी हो सके तत्व को एनिमेट करना संभव है।CSS3 - डीओएम हटाने पर संक्रमण
@-moz-keyframes fadeIn {
from {opacity:0;}
to {opacity:1;}
}
@-webkit-keyframes fadeIn {
from {opacity:0;}
to {opacity:1;}
}
@keyframes fadeIn {
from {opacity:0;}
to {opacity:1;}
}
#box {
-webkit-animation: fadeIn 500ms;
-moz-animation: fadeIn 500ms;
animation: fadeIn 500ms;
}
है वहाँ कुछ इसी तरह की सुविधा उपलब्ध एक एनीमेशन एक तत्व को लागू करने के लिए (सीएसएस, कोई जावास्क्रिप्ट के माध्यम से) सही से पहले यह डोम से निकाल दिया जाता: कुछ नमूने यहां सीएसएस है? नीचे एक जेएसफ़िल्ड है जिसे मैंने इस विचार के साथ खेलने के लिए बनाया है; यदि आप समाधान के बारे में जानते हैं तो इसे फोर्क करने के लिए स्वतंत्र महसूस करें।
jsFiddle - http://jsfiddle.net/skoshy/dLdFZ/
यह सुंदर चतुर है, लेकिन अगर मैं एक जावास्क्रिप्ट मार्ग जा रहा हूँ मैं सिर्फ 'कह सकते हैं $ ('# । भरने ') fadeOut() '। जो मैं वास्तव में खोज रहा हूं वह एक सीएसएस केवल समाधान है - मुझे पता नहीं था कि जब तक मैंने कई फ़ोरम नहीं देखे, तब तक मुझे तत्व में लुप्त होना संभव था, इसलिए मुझे उम्मीद है कि किसी को भी तत्व को कैसे फीका जाए। – Steve
लेकिन '.fadeOut()' एनीमेशन करने के लिए जावास्क्रिप्ट का उपयोग करता है।यह वास्तव में एनीमेशन के लिए सीएसएस का उपयोग करता है। यह सही समय पर ट्रिगर करने के लिए जावास्क्रिप्ट का उपयोग करता है। और चूंकि आप वास्तव में तत्व को सम्मिलित/निकालने के लिए जावास्क्रिप्ट का उपयोग कर रहे हैं, "केवल सीएसएस" मनमाने ढंग से है। सीएसएस में कुछ इसे हटाने से ठीक पहले ट्रिगर करने का कोई तरीका नहीं है। यदि आपने लिंक में "मुझे क्लिक करें" divs को बदल दिया है, तो आप fading out को ट्रिगर करने के लिए चयनकर्ता के रूप में '.hide: active + # fill' का उपयोग करने में सक्षम हो सकते हैं, लेकिन फिर भी आपको वास्तव में 'एनीमेशन' ईवेंट की आवश्यकता होगी जब यह फीका हो जाता है तो तत्व को हटा दें। – mercator
@ एसके .: संक्षेप में, नहीं। सीएसएस तत्वों को जोड़ने और हटाने जैसे डीओएम हेरफेर से संबंधित नहीं है। फेडइन चाल काम करता है क्योंकि एनीमेशन तब होता है जब तत्व पहले दिखाई देता है क्योंकि यह पहला क्षण है जब यह हो सकता है। किसी तत्व को फेडऑट को जानने के लिए, उसे यह जानना होगा कि इसे हटाया जा रहा है, और यह जावास्क्रिप्ट के साथ ही संभव है। और जैसा कि मर्केटर ने कहा, चूंकि आप पहले से ही तत्व को हटाने के लिए जावास्क्रिप्ट का उपयोग कर रहे हैं, इसलिए "सीएसएस-केवल" आवश्यकता मनमानी है। – joequincy