कस्टम प्रॉपर्टी प्रकार परिभाषित करण्यासाठी CSS @property ची शक्ती एक्सप्लोर करा, जे प्रगत स्टायलिंग, ॲनिमेशन आणि अखंड संक्रमणे सक्षम करते. यात सिंटॅक्स, वापर आणि व्यावहारिक उदाहरणे आहेत.
CSS ची जादू उलगडताना: @property आणि कस्टम प्रॉपर्टी प्रकार परिभाषांचा सखोल अभ्यास
CSS कस्टम प्रॉपर्टीज (ज्यांना CSS व्हेरिएबल्स म्हणूनही ओळखले जाते) ने CSS लिहिण्याच्या आणि सांभाळण्याच्या पद्धतीत क्रांती घडवली आहे. ते पुनर्वापरयोग्यता, लवचिकता आणि सांभाळण्याची सोय देतात, ज्यामुळे आपली स्टाईलशीट अधिक डायनॅमिक आणि व्यवस्थापित करण्यास सोपी होते. तथापि, अलीकडेपर्यंत, कस्टम प्रॉपर्टीजमध्ये त्यांच्या अपेक्षित डेटा प्रकारांना परिभाषित करण्याची क्षमता नव्हती, ज्यामुळे प्रगत स्टायलिंग आणि ॲनिमेशनसाठी त्यांची क्षमता मर्यादित होती. आता @property
नियम आला आहे – एक गेम-चेंजर जो आपल्याला आपल्या कस्टम प्रॉपर्टीजचा प्रकार, सिंटॅक्स आणि प्रारंभिक मूल्य स्पष्टपणे परिभाषित करण्याची परवानगी देतो.
@property नियम काय आहे?
@property
नियम CSS Houdini API कुटुंबाचा एक भाग आहे, ज्याचा उद्देश CSS इंजिनची अंतर्गत कार्यप्रणाली डेव्हलपर्सना उपलब्ध करून देणे आहे. विशेषतः, @property
हा कस्टम प्रॉपर्टीज आणि व्हॅल्यूज API चा एक भाग आहे. हे आपल्याला ब्राउझरसह एक कस्टम प्रॉपर्टी नोंदणी करण्याची परवानगी देते, ज्यामध्ये आपण हे निर्दिष्ट करू शकता:
- name: कस्टम प्रॉपर्टीचे नाव (उदा.
--my-color
). - syntax: प्रॉपर्टीचा अपेक्षित डेटा प्रकार (उदा.
<color>
,<number>
,<length>
). - inherits: प्रॉपर्टीने तिचे मूल्य तिच्या पॅरेंट एलिमेंटकडून वारसाहक्काने घ्यावे की नाही (
true
किंवाfalse
). - initial-value: दुसरे कोणतेही मूल्य निर्दिष्ट न केल्यास प्रॉपर्टीचे डीफॉल्ट मूल्य.
ही वैशिष्ट्ये परिभाषित करून, आपण कस्टम प्रॉपर्टीज कशा वापरल्या जातात आणि विशेषतः ॲनिमेशन आणि ट्रांझिशन्समध्ये त्या कशा वागतात यावर अधिक नियंत्रण मिळवता.
@property का वापरावे? फायदे
@property
वापरण्याचे अनेक महत्त्वपूर्ण फायदे आहेत:
१. प्रकार सुरक्षा आणि प्रमाणीकरण
@property
शिवाय, CSS सर्व कस्टम प्रॉपर्टीजला स्ट्रिंग मानते. जेव्हा तुम्ही विशिष्ट डेटा प्रकारांची आवश्यकता असलेल्या गणनेमध्ये किंवा ॲनिमेशनमध्ये त्यांचा वापर करण्याचा प्रयत्न करता तेव्हा यामुळे अनपेक्षित परिणाम होऊ शकतात. उदाहरणार्थ, जर तुम्ही एखाद्या कस्टम प्रॉपर्टीला संख्या म्हणून वापरण्याचा विचार करत असाल, पण चुकून त्याला स्ट्रिंग मूल्य दिले, तर तुमचे ॲनिमेशन अयशस्वी होऊ शकते किंवा चुकीचे परिणाम देऊ शकते.
@property
हे आपल्याला कस्टम प्रॉपर्टीचा अपेक्षित सिंटॅक्स (डेटा प्रकार) निर्दिष्ट करण्याची परवानगी देऊन ही समस्या सोडवते. त्यानंतर ब्राउझर या सिंटॅक्सच्या विरुद्ध दिलेल्या मूल्याची पडताळणी करेल, हे सुनिश्चित करेल की ते अपेक्षित प्रकाराशी जुळते. जर मूल्य सिंटॅक्सशी जुळत नसेल, तर ब्राउझर प्रारंभिक मूल्य (जर दिलेले असेल तर) वापरेल किंवा प्रॉपर्टीला अवैध मानेल.
२. अखंड ॲनिमेशन आणि ट्रांझिशन्स
@property
ची खरी शक्ती ॲनिमेशन आणि ट्रांझिशन्सच्या बाबतीत दिसून येते. त्याशिवाय, कस्टम प्रॉपर्टीजला ॲनिमेट करणे अवघड असू शकते कारण ब्राउझरला एका सामान्य स्ट्रिंगच्या वेगवेगळ्या मूल्यांमध्ये कसे इंटरपोलेट (interpolation) करायचे हे माहित नसते. इच्छित परिणाम मिळविण्यासाठी आपल्याला जावास्क्रिप्ट हॅक्सचा अवलंब करावा लागेल किंवा मर्यादित CSS वैशिष्ट्ये वापरावी लागतील.
कस्टम प्रॉपर्टीचा सिंटॅक्स परिभाषित करून, तुम्ही ब्राउझरला ॲनिमेशन आणि ट्रांझिशन्स दरम्यान त्याच्या मूल्यांमध्ये कसे इंटरपोलेट करायचे ते सांगता. उदाहरणार्थ, जर तुम्ही <color>
सिंटॅक्ससह कस्टम प्रॉपर्टी परिभाषित केली, तर ब्राउझरला कळते की त्याने रंगांमध्ये एका गुळगुळीत रंग ग्रेडियंटचा वापर करून इंटरपोलेट केले पाहिजे. त्याचप्रमाणे, जर तुम्ही <number>
सिंटॅक्ससह प्रॉपर्टी परिभाषित केली, तर ब्राउझरला कळते की त्याने संख्यांमध्ये रेषीय प्रगती (linear progression) वापरून इंटरपोलेट केले पाहिजे.
३. सुधारित कोड वाचनीयता आणि सांभाळण्याची सोय
@property
आपल्या CSS कोडची वाचनीयता आणि सांभाळण्याची सोय सुधारते, कारण ते स्पष्ट करते की कस्टम प्रॉपर्टी कोणत्या डेटा प्रकाराचे प्रतिनिधित्व करते. हे इतर डेव्हलपर्सना (आणि भविष्यातील तुम्हाला) प्रॉपर्टीचा उद्देश आणि ती कशी वापरावी हे समजण्यास मदत करते.
शिवाय, कस्टम प्रॉपर्टीचे प्रारंभिक मूल्य स्पष्टपणे परिभाषित करून, आपण एक स्पष्ट फॉलबॅक मूल्य प्रदान करता जे दुसरे कोणतेही मूल्य निर्दिष्ट न केल्यास वापरले जाईल. हे अनपेक्षित व्हिज्युअल त्रुटी टाळू शकते आणि आपला कोड अधिक मजबूत बनवते.
४. सुधारित कार्यक्षमता
काही प्रकरणांमध्ये, @property
वापरल्याने आपल्या CSS कोडची कार्यक्षमता सुधारू शकते. ब्राउझरला आपल्या कस्टम प्रॉपर्टीजच्या अपेक्षित डेटा प्रकारांबद्दल अधिक माहिती देऊन, आपण त्याला रेंडरिंग प्रक्रिया ऑप्टिमाइझ करण्याची परवानगी देता. यामुळे विशेषतः जटिल लेआउटवर जलद ॲनिमेशन आणि ट्रांझिशन्स होऊ शकतात.
@property चा सिंटॅक्स
@property
नियम खालील सिंटॅक्स वापरून परिभाषित केला जातो:
@property --property-name {
syntax: <type>;
inherits: true | false;
initial-value: <value>;
}
चला या प्रत्येक घटकाचे विश्लेषण करूया:
--property-name
: हे तुम्ही परिभाषित करत असलेल्या कस्टम प्रॉपर्टीचे नाव आहे. ते दोन हायफन (--
) ने सुरू झाले पाहिजे आणि त्यात कोणतेही वैध CSS आयडेंटिफायर कॅरेक्टर्स असू शकतात. उदाहरणार्थ:--primary-color
,--font-size
,--spacing-unit
.syntax
: हे कस्टम प्रॉपर्टीचा अपेक्षित डेटा प्रकार निर्दिष्ट करते. ते CSS व्हॅल्यू प्रकार डिस्क्रिप्टर वापरून परिभाषित केले जाते. काही सामान्य सिंटॅक्स मूल्ये खालीलप्रमाणे आहेत:<color>
: रंगाचे मूल्य दर्शवते (उदा.#ffffff
,rgb(255, 255, 255)
,hsl(0, 0%, 100%)
,white
).<number>
: संख्यात्मक मूल्य दर्शवते (उदा.1
,3.14
,-42
).<length>
: लांबीचे मूल्य दर्शवते (उदा.10px
,2em
,50vh
,1rem
).<percentage>
: टक्केवारीचे मूल्य दर्शवते (उदा.50%
,100%
,25.5%
).<string>
: स्ट्रिंग मूल्य दर्शवते (उदा."Hello"
,"World"
).<image>
: प्रतिमेचे मूल्य दर्शवते (उदा.url("image.jpg")
,linear-gradient(...)
).<angle>
: कोनाचे मूल्य दर्शवते (उदा.45deg
,0.5rad
,1turn
).*
: कोणतेही वैध CSS मूल्य दर्शवते. सावधगिरीने वापरा, कारण ते प्रकार तपासणीचा उद्देश नष्ट करते.- कस्टम सिंटॅक्स: आपल्याला रेग्युलर एक्सप्रेशनसारख्या पॅटर्नचा वापर करून जटिल सिंटॅक्स परिभाषित करण्याची परवानगी देते.
inherits
: हे बुलियन मूल्य ठरवते की कस्टम प्रॉपर्टीने तिचे मूल्य तिच्या पॅरेंट एलिमेंटकडून वारसाहक्काने घ्यावे की नाही. जरtrue
सेट केले असेल, तर प्रॉपर्टी वारसा हक्काने मूल्य घेईल. जरfalse
सेट केले असेल, तर प्रॉपर्टी वारसा हक्काने मूल्य घेणार नाही आणि एलिमेंटवर स्पष्टपणे परिभाषित न केल्यास तिचे प्रारंभिक मूल्य वापरेल. डीफॉल्ट मूल्यfalse
आहे.initial-value
: हे कस्टम प्रॉपर्टीचे डीफॉल्ट मूल्य निर्दिष्ट करते. जर प्रॉपर्टी एखाद्या एलिमेंटवर स्पष्टपणे सेट केलेली नसेल, तर ती हे मूल्य वापरेल. प्रारंभिक मूल्य निर्दिष्ट सिंटॅक्सनुसार एक वैध मूल्य असणे आवश्यक आहे. जर प्रारंभिक मूल्य प्रदान केलेले नसेल आणि दुसरे कोणतेही मूल्य सेट केलेले नसेल, तर प्रॉपर्टीला तिचे अनसेट मूल्य मिळाल्यासारखे मानले जाईल.
@property ची प्रत्यक्ष उदाहरणे
चला आपल्या CSS कोडमध्ये @property
कसे वापरावे याची काही व्यावहारिक उदाहरणे पाहूया.
उदाहरण १: रंगाचे ॲनिमेशन करणे
या उदाहरणात, आपण --background-color
नावाची एक कस्टम प्रॉपर्टी तयार करू आणि CSS ट्रांझिशन्स वापरून तिला ॲनिमेट करू. ब्राउझर रंगांमध्ये योग्यरित्या इंटरपोलेट करेल हे सुनिश्चित करण्यासाठी आपण सिंटॅक्स <color>
म्हणून परिभाषित करू.
@property --background-color {
syntax: <color>;
inherits: false;
initial-value: #ffffff; /* White */
}
.box {
width: 200px;
height: 200px;
background-color: var(--background-color);
transition: --background-color 0.5s ease-in-out;
}
.box:hover {
--background-color: #007bff; /* Blue */
}
या कोडमध्ये:
- आपण
--background-color
नावाची कस्टम प्रॉपर्टी<color>
सिंटॅक्ससह परिभाषित करतो,inherits
लाfalse
सेट करतो, आणिinitial-value
पांढऱ्या रंगावर (#ffffff
) सेट करतो. - आपण ही प्रॉपर्टी
.box
एलिमेंटच्याbackground-color
वरvar(--background-color)
वापरून लागू करतो. - आपण
--background-color
प्रॉपर्टीमध्ये एक ट्रांझिशन जोडतो जेणेकरून मूल्य बदलल्यावर ते सहजतेने ॲनिमेट होईल. - आपण होव्हर केल्यावर
--background-color
चे मूल्य निळ्या रंगात (#007bff
) बदलतो, ज्यामुळे एक गुळगुळीत रंग संक्रमण प्रभाव तयार होतो.
उदाहरण २: संख्येचे ॲनिमेशन करणे
या उदाहरणात, आपण --blur-radius
नावाची एक कस्टम प्रॉपर्टी तयार करू आणि CSS ट्रांझिशन्स वापरून तिला ॲनिमेट करू. ब्राउझर लांबीच्या मूल्यांमध्ये योग्यरित्या इंटरपोलेट करेल हे सुनिश्चित करण्यासाठी आपण सिंटॅक्स <length>
म्हणून परिभाषित करू. हे उदाहरण लांबी वापरण्याच्या एका लोकप्रिय केसचे प्रदर्शन करते: पिक्सेल व्हॅल्यूज. हे सहजपणे इतर युनिट प्रकारांमध्ये देखील रूपांतरित केले जाऊ शकते. हे लक्षात घेणे देखील महत्त्वाचे आहे की प्रारंभिक मूल्य `0px` वर सेट करणे महत्त्वाचे आहे, कारण ब्राउझरला ट्रांझिशन्स योग्यरित्या करण्यासाठी एका बेस युनिटची आवश्यकता असते.
@property --blur-radius {
syntax: <length>;
inherits: false;
initial-value: 0px;
}
.image {
width: 300px;
height: 200px;
background-image: url("image.jpg");
filter: blur(var(--blur-radius));
transition: --blur-radius 0.3s ease-in-out;
}
.image:hover {
--blur-radius: 5px;
}
या कोडमध्ये:
- आपण
--blur-radius
नावाची कस्टम प्रॉपर्टी<length>
सिंटॅक्ससह परिभाषित करतो,inherits
लाfalse
सेट करतो, आणिinitial-value
0px
वर सेट करतो. - आपण ही प्रॉपर्टी
.image
एलिमेंटच्याfilter: blur()
फंक्शनवरvar(--blur-radius)
वापरून लागू करतो. - आपण
--blur-radius
प्रॉपर्टीमध्ये एक ट्रांझिशन जोडतो जेणेकरून मूल्य बदलल्यावर ते सहजतेने ॲनिमेट होईल. - आपण होव्हर केल्यावर
--blur-radius
चे मूल्य5px
मध्ये बदलतो, ज्यामुळे एक गुळगुळीत ब्लर प्रभाव तयार होतो.
उदाहरण ३: इनहेरिटेड प्रॉपर्टीजसह थीम असलेली UI तयार करणे
या उदाहरणात, आपण इनहेरिटेड कस्टम प्रॉपर्टीज वापरून एक साधी थीम असलेली UI तयार करू. आपण --theme-color
नावाची एक कस्टम प्रॉपर्टी परिभाषित करू आणि ती :root
एलिमेंटवर सेट करू. यामुळे सर्व चाइल्ड एलिमेंट्सना थीमचा रंग वारसा हक्काने मिळेल.
@property --theme-color {
syntax: <color>;
inherits: true;
initial-value: #4caf50; /* Green */
}
:root {
--theme-color: #4caf50;
}
.button {
background-color: var(--theme-color);
color: white;
padding: 10px 20px;
border: none;
cursor: pointer;
}
.button:hover {
--theme-color: #388e3c; /* Darker Green */
}
या कोडमध्ये:
- आपण
--theme-color
नावाची कस्टम प्रॉपर्टी<color>
सिंटॅक्ससह परिभाषित करतो,inherits
लाtrue
सेट करतो, आणिinitial-value
हिरव्या रंगावर (#4caf50
) सेट करतो. - आपण
--theme-color
चे मूल्य:root
एलिमेंटवर सेट करतो, ज्यामुळे ते डॉक्युमेंटमधील सर्व एलिमेंट्ससाठी उपलब्ध होते. - आपण ही प्रॉपर्टी
.button
एलिमेंटचाbackground-color
सेट करण्यासाठी वापरतो. - आपण होव्हर केल्यावर
--theme-color
चे मूल्य गडद हिरव्या रंगात (#388e3c
) बदलतो, ज्यामुळे हे दिसून येते की UI ची थीम बदलण्यासाठी इनहेरिटेड प्रॉपर्टीज कशा सहजपणे अपडेट केल्या जाऊ शकतात.
उदाहरण ४: कस्टम सिंटॅक्स परिभाषित करणे
syntax
प्रॉपर्टी अधिक विशिष्ट पॅटर्न परिभाषित करण्यासाठी स्ट्रिंग देखील स्वीकारू शकते, जे अधिक जटिल मूल्यांची पडताळणी करण्यासाठी विशेषतः उपयुक्त आहे. हा सिंटॅक्स MDN (Mozilla Developer Network) वर दस्तऐवजीकरण केलेल्या रेग्युलर एक्सप्रेशनसारख्या प्रणालीचा वापर करतो. हे उदाहरण बॅकग्राउंड पोझिशनसाठी कस्टम सिंटॅक्स कसा परिभाषित करायचा आणि वापरायचा हे स्पष्ट करते, जो `top`, `bottom`, `left` आणि `right` कीवर्ड पर्यायांना वैध मूल्य म्हणून स्वीकारतो.
@property --background-position {
syntax: "[ top | bottom | left | right ]{1,2}";
inherits: false;
initial-value: top left;
}
.container {
width: 300px;
height: 300px;
background-image: url('image.jpg');
background-position: var(--background-position);
}
/* Valid positions */
.container.top-right {
--background-position: top right;
}
.container.bottom-left {
--background-position: bottom left;
}
/* Invalid position (will fallback to initial-value) */
.container.invalid {
--background-position: center;
}
येथे, `syntax` वैध कीवर्ड्सच्या स्ट्रिंग प्रतिनिधित्वाचा वापर करून निर्दिष्ट केला आहे. `[ ]` नोटेशन पर्यायांचा एक संच परिभाषित करते, `|` चिन्ह त्यांना वेगळे करते, आणि `{1,2}` अनुमत मूल्यांची संख्या एक किंवा दोन कीवर्ड्सपर्यंत मर्यादित करते. जर `center` सारखे अवैध मूल्य वापरले गेले, तर ब्राउझर `top left` या `initial-value` वर परत जाईल.
ब्राउझर सपोर्ट
@property
साठी ब्राउझर सपोर्ट आधुनिक ब्राउझरमध्ये सामान्यतः चांगला आहे, ज्यात खालील गोष्टींचा समावेश आहे:
- Chrome (आवृत्ती 64 आणि वरील)
- Edge (आवृत्ती 79 आणि वरील - Chromium वर आधारित)
- Firefox (आवृत्ती 72 आणि वरील)
- Safari (आवृत्ती 14.1 आणि वरील)
तथापि, Can I use... सारख्या वेबसाइट्सवरील नवीनतम ब्राउझर सुसंगतता तक्त्या तपासणे नेहमीच चांगली कल्पना आहे, जेणेकरून आपण वापरत असलेली वैशिष्ट्ये आपल्या वापरकर्त्यांद्वारे वापरल्या जाणाऱ्या ब्राउझरमध्ये समर्थित आहेत याची खात्री करता येईल.
@property
ला सपोर्ट न करणाऱ्या जुन्या ब्राउझरसाठी, ब्राउझर @property
नियम दुर्लक्षित करेल आणि कस्टम प्रॉपर्टीला फक्त एक सामान्य CSS व्हेरिएबल म्हणून मानेल. याचा अर्थ असा की ॲनिमेशन आणि ट्रांझिशन्स कदाचित अपेक्षेप्रमाणे काम करणार नाहीत, परंतु कोड तरीही कार्यान्वित राहील.
@property वापरण्यासाठी सर्वोत्तम पद्धती
@property
वापरताना लक्षात ठेवण्यासाठी येथे काही सर्वोत्तम पद्धती आहेत:
- नेहमी सिंटॅक्स परिभाषित करा: प्रकार सुरक्षितता सुनिश्चित करण्यासाठी आणि अखंड ॲनिमेशन व ट्रांझिशन्स सक्षम करण्यासाठी आपल्या कस्टम प्रॉपर्टीजचा
syntax
नेहमी परिभाषित करा. - प्रारंभिक मूल्य सेट करा: डीफॉल्ट मूल्य प्रदान करण्यासाठी आणि अनपेक्षित व्हिज्युअल त्रुटी टाळण्यासाठी एक
initial-value
द्या. - वर्णनात्मक नावे वापरा: आपल्या कस्टम प्रॉपर्टीजसाठी वर्णनात्मक नावे निवडा जी त्यांचा उद्देश आणि डेटा प्रकार स्पष्टपणे दर्शवतात. उदाहरणार्थ,
--color
ऐवजी--button-background-color
वापरा. - वारसाहक्काचा विचार करा: आपल्या कस्टम प्रॉपर्टीजने त्यांच्या पॅरेंट एलिमेंट्सकडून वारसा हक्क घ्यावा की नाही हे ठरवा. थीम रंग किंवा फॉन्ट आकार यांसारख्या संपूर्ण UI मध्ये शेअर केल्या जाणाऱ्या प्रॉपर्टीजसाठी
inherits: true
वापरा. - पूर्णपणे चाचणी करा: आपला कोड अपेक्षेप्रमाणे काम करतो की नाही हे सुनिश्चित करण्यासाठी वेगवेगळ्या ब्राउझरमध्ये त्याची चाचणी करा.
@property
ला सपोर्ट न करणाऱ्या जुन्या ब्राउझरसाठी फॉलबॅक यंत्रणा वापरा. - आपल्या कस्टम प्रॉपर्टीजचे दस्तऐवजीकरण करा: आपल्या कस्टम प्रॉपर्टीजचा उद्देश आणि वापर स्पष्ट करण्यासाठी आपल्या CSS कोडमध्ये टिप्पण्या जोडा. यामुळे इतर डेव्हलपर्सना (आणि भविष्यातील तुम्हाला) आपला कोड समजणे सोपे होईल. Stylelint सारखी साधने देखील या सर्वोत्तम पद्धती लागू करण्यासाठी कॉन्फिगर केली जाऊ शकतात.
@property आणि CSS Houdini
जसे आधी नमूद केले आहे, @property
हे CSS Houdini API कुटुंबाचा एक भाग आहे. CSS Houdini हे कमी-स्तरीय API चा संग्रह आहे जे CSS इंजिनची अंतर्गत कार्यप्रणाली डेव्हलपर्सना उपलब्ध करून देतात, ज्यामुळे त्यांना कस्टम वैशिष्ट्ये आणि वर्तनांसह CSS चा विस्तार करता येतो.
इतर Houdini API मध्ये खालील गोष्टींचा समावेश आहे:
- Paint API: आपल्याला जावास्क्रिप्ट वापरून कस्टम बॅकग्राउंड प्रतिमा, बॉर्डर्स आणि मास्क परिभाषित करण्याची परवानगी देते.
- Animation Worklet API: आपल्याला जावास्क्रिप्ट वापरून उच्च-कार्यक्षमतेचे ॲनिमेशन तयार करण्याची परवानगी देते.
- Layout API: आपल्याला एलिमेंट्ससाठी कस्टम लेआउट अल्गोरिदम, जसे की ग्रिड सिस्टीम किंवा मेसनरी लेआउट, परिभाषित करण्याची परवानगी देते.
- Parser API: आपल्याला जावास्क्रिप्ट वापरून CSS कोड पार्स आणि हाताळण्याची परवानगी देते.
@property
ला इतर Houdini API सह एकत्रित करून, आपण खरोखरच शक्तिशाली आणि सानुकूल करण्यायोग्य CSS सोल्यूशन्स तयार करू शकता.
निष्कर्ष
@property
नियम CSS मध्ये एक शक्तिशाली भर आहे जो आपल्याला कस्टम प्रॉपर्टी प्रकार परिभाषित करण्याची परवानगी देतो, ज्यामुळे प्रगत स्टायलिंग, ॲनिमेशन आणि ट्रांझिशन्स शक्य होतात. @property
वापरून, आपण आपल्या CSS कोडची प्रकार सुरक्षा, वाचनीयता, सांभाळण्याची सोय आणि कार्यक्षमता सुधारू शकता.
जरी ब्राउझर सपोर्ट सामान्यतः चांगला असला तरी, आपला कोड वेगवेगळ्या ब्राउझरमध्ये तपासणे आणि @property
ला सपोर्ट न करणाऱ्या जुन्या ब्राउझरसाठी फॉलबॅक यंत्रणा प्रदान करणे महत्त्वाचे आहे.
या लेखात नमूद केलेल्या सर्वोत्तम पद्धतींचे पालन करून, आपण खरोखरच आश्चर्यकारक वेब अनुभव तयार करण्यासाठी @property
च्या शक्तीचा उपयोग करू शकता.