जावास्क्रिप्ट के लिए सीएसएस में एलिमेंट्स का विस्तार
सीएसएस गुणों
width और
height
को सेट करना इस बात की गारंटी नहीं देता कि एलिमेंट
निर्धारित आकार का हो जाएगा। आइए उदाहरणों पर नजर डालें।
उदाहरण
अभी एलिमेंट के आकार दिए गए आकारों से मेल खाते हैं:
<div id="elem">
text
</div>
#elem {
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
}
:
उदाहरण
और अब एलिमेंट को
padding
गुण सेट करते हैं।
परिणामस्वरूप, एलिमेंट की वास्तविक चौड़ाई अधिक हो जाएगी
और आंतरिक पैडिंग के दिए गए मान तक विस्तारित हो जाएगी:
<div id="elem">
text
</div>
#elem {
padding: 25px;
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
}
:
उदाहरण
बॉर्डर की उपस्थिति भी एलिमेंट को विस्तारित करती है:
<div id="elem">
text
</div>
#elem {
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
border: 20px solid #F0D7A1;
}
:
उदाहरण
box-sizing
गुण ऊपर वर्णित व्यवहार को बदलने की अनुमति देता है।
ऐसा किया जा सकता है कि न तो पैडिंग
और न ही बॉर्डर एलिमेंट को विस्तारित करे।
इसके लिए इस गुण को
border-box मान सेट करना होगा:
<div id="elem">
text
</div>
#elem {
box-sizing: border-box;
padding: 20px;
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
border: 20px solid #F0D7A1;
}
:
वर्णित की महत्वपूर्णता
जावास्क्रिप्ट के दृष्टिकोण से वर्णित स्थिति
बहुत सुविधाजनक नहीं है। आखिरकार, यह पता चलता है
कि width गुण का मान पढ़कर हम बिल्कुल भी
आश्वस्त नहीं हो सकते कि एलिमेंट की चौड़ाई
बिल्कुल यही होगी।