मैं एक वेब ऐप पर काम कर रहा हूं; इसकी डिजाइन आवश्यकताओं में से एक कई बड़े CSS3 एनीमेशन है।CSS3 एनीमेशन और संक्रमण - ग्राफिक पृष्ठभूमि या डीओएम तत्व एनिमेट करने में ब्राउज़र बेहतर हैं?
विशेष रूप से - इसमें <div>
है जो उपयोगकर्ता इनपुट के जवाब में स्क्रीन के चारों ओर परिवर्तित हो जाएगा।
ऐप डिज़ाइन किए जाने के तरीके के कारण, <div>
की "सामग्री" को एक बड़े स्थैतिक ग्राफिक (उदा।, .jpg या .png) के रूप में <div>
की पृष्ठभूमि के रूप में सेट किया जा सकता है।
या, सामग्री को मानक HTML के साथ भी कार्यान्वित किया जा सकता है। (सामग्री लेआउट स्वयं एक "छोटा" मुश्किल है - इसके लिए कई फ्लोटेड या तैनात नेस्टेड डिवी तत्वों और स्पैन की आवश्यकता होती है, लेकिन कुछ भी पागल नहीं होती है।)
मेरा प्रश्न है - कौन सा विकल्प सबसे अच्छा (सबसे आसान) एनिमेशन?
(मैं स्पष्ट रूप से यह स्वयं परीक्षण कर सकता हूं, लेकिन विशेष रूप से उपकरणों की एक विस्तृत श्रृंखला पर एक दर्जन विभिन्न ब्राउज़रों में एक एनीमेशन की चिकनीता का न्याय करना मुश्किल होता है। मुझे यह भी पता चलता है कि अन्य विचार हैं - उदाहरण के लिए, रखरखाव। लेकिन इस मामले में, मैं एनीमेशन प्रदर्शन पर पूरी तरह से ध्यान केंद्रित कर रहा हूँ।)
अगर ब्राउज़रों आम तौर पर animating में बेहतर कर रहे हैं मैं सोच रहा हूँ/सरल डोम तत्वों प्रतिपादन ग्राफिक पृष्ठभूमि, या अधिक जटिल डोम तत्वों के साथ (साथ बहुत सारे बच्चे) ग्राफिक तत्वों के बिना?
इसके अलावा - क्या अन्य दिशानिर्देश हैं? उदा।,
- क्या ब्राउज़र कुछ प्रकार के ग्राफिक तत्वों को दूसरों से बेहतर तरीके से एनिमेट करते हैं? (उदा।, .png बनाम .jpg)
- क्या ब्राउज़र तत्वों को
position:absolute
, जब बच्चे के तत्व फ़्लोट किए जाते हैं, या जब बच्चे तत्व की स्थिति नियमित दस्तावेज़ प्रवाह द्वारा निर्धारित की जाती है, तो क्या ब्राउज़र बेहतर तत्व को एनिमेट करते हैं? - नेस्टेड तत्वों पर अस्पष्टता, ड्रॉप-छाया, या 3 डी ट्रांसफॉर्म जैसी चीजें माता-पिता तत्व की एनीमेशन पर प्रतिकूल प्रभाव डालती हैं?
- क्या एनीमेशन प्रदर्शन तत्व की जटिलता के संबंध में घटता है? उदाहरण के लिए, एक तत्व के साथ एक तत्व है जो घोंसला वाले डीओएम तत्व एनीमेशन के साथ एक साधारण तत्व की तुलना में कम आसानी से एक पाठ नोड के साथ करता है?
मुझे इन चीजों के बारे में अंतर्ज्ञान है (गहरा घोंसला वाले डोम तत्व एक साधारण तत्व से कम आसानी से एनिमेट करेंगे), लेकिन मेरा अंतर्ज्ञान अक्सर गलत होता है। इसलिए, मैं सोच रहा हूं कि ब्राउजर के लिए कम या ज्यादा काम करने के बारे में "नियम" हैं या नहीं।
मुझे और क्या विचार करना चाहिए जब बहुत से बच्चे तत्वों के साथ बड़े तत्व एनिमेटेड होते हैं?
यह आपके प्रश्न का उत्तर नहीं देता है लेकिन आपके शोध में मदद कर सकता है - http://paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/ – Neil
धन्यवाद नील - महान लिंक। मैं थोड़ी देर पहले ठोकर खाई, और पॉल आयरिश वह है जिसने मुझे इस सामान के बारे में पहली जगह सोचने के लिए कहा। यह देखकर कि वह और उसके कैलिबर के अन्य लोग क्या उत्पादन कर सकते हैं, वह मुझे चीजों को यथासंभव अनुकूलित करने के लिए प्रेरित करता है। – mattstuehler