Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> CSS

CSS Keyframes: एनिमेशन बनाने की पूरी गाइड

CSS के साथ एनिमेशन बनाना बहुत आसान है। और मजेदार बात यह है कि आपको किसी थर्ड-पार्टी फ्रेमवर्क या प्लगइन्स की आवश्यकता नहीं है।

@keyframes CSS नियम एक ऐसा टूल है जिसे हमें इन एनिमेशन को बनाने के लिए अपनी बेल्ट के नीचे रखने की आवश्यकता है।

@keyframes सिंटैक्स

@keyframes एक CSS at-rule है। At-rules बताते हैं कि CSS को कैसे व्यवहार करना चाहिए। @viewport, @supports जैसे कई अन्य at-rules हैं।

हम निम्न सिंटैक्स के साथ एक @keyframes नियम को परिभाषित करते हैं।

@keyframes <name> { from { /* start details here */ } to { /* end details here */ } } 

हम कीवर्ड के बजाय प्रतिशत निर्दिष्ट करके अधिक परिष्कृत एनिमेशन घोषणाएं प्राप्त कर सकते हैं।

@keyframes <name> { 0% { } 50% { } 100% { } } 

नोट: हमारे नव निर्मित keyframe का उपयोग करने के लिए हमें इसे animation-name प्रॉपर्टी के मान के रूप में जोड़ना होगा। हम animation-duration को भी सेट कर सकते हैं ताकि हमारे घोषित @keyframes एनिमेशन की अवधि निर्दिष्ट हो सके।

मैजिक बॉल उदाहरण

आइए आगे बढ़ते हैं और एक मैजिक बॉल बनाते हैं जो प्रकट होती है और गायब हो जाती है। यदि आप किसी भी बिंदु पर खो जाते हैं तो साथ में Codepen देखें।

पहली चीज़ जो हमें करने की आवश्यकता है वह है अपनी एनिमेशन को परिभाषित करना। हम इसे magic-ball नाम देंगे:

@keyframes magic-ball { from { background-color: limegreen; } to { background-color: blueviolet; } } 

यहां मूल रूप से हम बैकग्राउंड रंग को limegreen से blueviolet में बदल रहे हैं। इसे किसी भी एलिमेंट पर लागू किया जा सकता है, लेकिन हम इसे एक सर्कल पर लागू करेंगे।

.circle { width: 10rem; height: 10rem; border-radius: 50%; animation-name: magic-ball; animation-duration: 4s; } 

मत भूलें कि हमारे keyframe एनिमेशन के काम करने के लिए हमें इसे animation-name प्रॉपर्टी के मान के रूप में जोड़ना होगा और animation-duration का उपयोग करके सेकंड में एनिमेशन अवधि सेट करनी होगी।

इस एनिमेशन के साथ, अब हमारी बॉल प्रकट हो रही है और गायब हो रही है!💥

फ्लैश सेल उदाहरण

आइए आगे बढ़ते हैं और एक और एनिमेशन बनाते हैं। इस बार हम एक वर्ग को एनिमेट करेंगे और एक मूविंग इफेक्ट बनाएंगे। हम अपनी एनिमेशन का नाम moveIn रखेंगे और इस मामले में हम प्रतिशत का उपयोग करेंगे।

@keyframes moveIn { 0% { opacity: 0; transform: translateY(3rem); } 100% { opacity: 1; transform: translate(0); } } 

Opacity हमारी पारदर्शिता है। इसलिए हम इस नव निर्मित एनिमेशन को अपने वर्ग पर लागू कर सकते हैं

.square { width: 10rem; height: 10rem; background-color: greenyellow; animation-name: moveIn; animation-duration: 4s; } 

आप देख सकते हैं कि कैसे बहुत कम के साथ हमने एक बढ़िया प्रभाव प्राप्त किया है!

निष्कर्ष

आप CSS डॉक्यूमेंटेशन पर एनिमेशन पढ़कर एनिमेशन पर अपनी यात्रा जारी रख सकते हैं। यह भी ध्यान दें, हमने केवल अपनी एनिमेशन को परिष्कृत करने के एक तरीके का उल्लेख किया है जिसकी अवधि का उपयोग करके। देखने लायक कई और एनिमेशन सब-प्रॉपर्टीज हैं!

अंत में, ध्यान रखें कि सभी प्रॉपर्टीज को एनिमेट नहीं किया जा सकता। एनिमेटेबल प्रॉपर्टीज की इस संपूर्ण सूची को देखें।

  1. CSS ड्रॉपडाउन मेनू: HTML और CSS से बनाएं इंटरैक्टिव नेविगेशन CSS ड्रॉपडाउन मेनू: HTML और CSS से बनाएं इंटरैक्टिव नेविगेशन

    आजकल ड्रॉपडाउन मेनू अधिकांश आधुनिक वेबसाइटों की एक सामान्य विशेषता है। ये मेनू आपको अधिक अनुकूलित नेविगेशन सुविधाएं बनाने की अनुमति देते हैं ताकि उपयोगकर्ता आसानी से वेबसाइट पर अपनी खोज की सामग्री ढूंढ सकें। HTML के अलावा CSS का उपयोग करके एक ड्रॉपडाउन मेनू बनाया जा सकता है जो केवल तब सामग्री दिखात

  1. CSS फ्लेक्सबॉक्स पूर्ण गाइड: पैरेंट और चाइल्ड प्रॉपर्टीज समझें CSS फ्लेक्सबॉक्स पूर्ण गाइड: पैरेंट और चाइल्ड प्रॉपर्टीज समझें

    CSS फ्लेक्सबॉक्स मॉडल को स्थापित CSS बॉक्स मॉडल को बेहतर बनाने के लिए बनाया गया था। फ्लेक्सबॉक्स मॉडल में अभी भी बॉक्स मॉडल के प्रमुख तत्व (मार्जिन, पैडिंग, बॉर्डर और कंटेंट) हैं, लेकिन कंटेनर/पैरेंट के बच्चों के साथ जगह को सबसे अच्छी तरह भरने के लिए लचीलापन प्रदान करता है। यह ट्यूटोरियल आपको फ्लेक

  1. CSS शेप्स बनाएं: आयत, वृत्त, त्रिकोण, दिल और अधिक CSS शेप्स बनाएं: आयत, वृत्त, त्रिकोण, दिल और अधिक

    आइए आगे बढ़ें और कुछ मजेदार CSS शेप्स बनाएं! आयत और वर्ग (Rectangles and Squares) डिफ़ॉल्ट रूप से डिव एक वर्ग या आयत होता है जो चौड़ाई और ऊंचाई प्रॉपर्टीज पर निर्भर करता है। वर्ग की समान चौड़ाई और ऊंचाई होती है जबकि आयत की नहीं: .rectangle { width: 2rem; height: 4rem; background-color: violet; } .s