CSS Margins
जब भी आप किसी webpage पर देखते हैं कि elements के बीच कुछ space (खाली जगह) है — वह CSS Margins की वजह से होता है। Margins वेबसाइट के layout को साफ़-सुथरा, संतुलित और professional बनाते हैं। इस लेसन में आप सीखेंगे कि margin क्या होता है, और इसे कैसे control किया जाता है।
CSS Margin क्या है?
- | Margin | ← Element के बाहर की जगह
- | Border | ← चारों ओर की लाइन
- | Padding | ← अंदर की खाली जगह
- | Content | ← असली text या image
CSS Margin की Syntax
selector {
margin: value;
}p {
margin: 20px;
}यह <p> element के चारों ओर 20px की खाली जगह बना देगा।
Margin के चारों Sides
आप margin को चारों तरफ़ अलग-अलग भी दे सकते हैं:
| Property (प्रॉपर्टी) | काम (Function) |
|---|---|
| margin-top | ऊपर की space |
| margin-right | दाईं ओर की space |
| margin-bottom | नीचे की space |
| margin-left | बाईं ओर की space |
div {
margin-top: 10px;
margin-right: 20px;
margin-bottom: 30px;
margin-left: 40px;
}Shorthand Property — margin
अगर आप सभी margins को एक लाइन में देना चाहें, तो shorthand property margin का इस्तेमाल करें
चार मान (top, right, bottom, left)
div {
margin: 10px 20px 30px 40px;
}ऊपर से 10px, दाएँ 20px, नीचे 30px, बाएँ 40px।
तीन मान (top, right/left, bottom)
div {
margin: 10px 20px 30px;
}ऊपर-नीचे 20px, दाएँ-बाएँ 40px।
एक मान (सभी चारों तरफ़ समान)
div {
margin: 30px;
}हर तरफ़ 30px की space।
Auto Margin
CSS में margin: auto; बहुत उपयोगी है, खासकर elements को center में लाने के लिए। Example
div {
width: 300px;
margin: auto;
}यह div को horizontal (बाएँ-दाएँ) center में ले आएगा। ध्यान दें — यह तभी काम करता है जब element की width fix हो।
Negative Margin
आप margin को negative value भी दे सकते हैं।
h1 {
margin-top: -20px;
}Margin vs Padding में फर्क
| तुलना का आधार | Margin | Padding |
|---|---|---|
| **Space location (जगह)** | Border के बाहर | Border के अंदर |
| **Background color से असर** | नहीं | होता है |
| **Elements के बीच gap** | हाँ | नहीं |
| **Layout shifting (लेआउट में बदलाव)** | हाँ | हाँ (लेकिन अंदर) |
div {
margin: 20px;
padding: 20px;
background-color: lightblue;
}यहाँ margin element को बाहर से दूर रखेगा, और padding content को अंदर से spacing देगा।
Margin Collapse (Important Concept)
अगर दो vertical margins (top और bottom) आपस में मिलते हैं, तो वे collapse होकर एक margin बन जाते हैं (add नहीं होते)। Example
<p>First</p>
<p>Second</p>
p {
margin: 20px 0;
}दोनों paragraphs के बीच space 40px नहीं, बल्कि 20px होगी। (यह feature सिर्फ vertical margins के लिए होता है।)
Example – Center Box Layout
.container {
width: 400px;
margin: 50px auto; /* ऊपर-नीचे 50px, बीच में auto center */
background: #f5f5f5;
padding: 20px;
border: 2px solid #ccc;
text-align: center;
}यह एक perfect centered और balanced box बना देगा।
Quick Recap
| Property | Example | Description |
|---|---|---|
| margin-top | 10px | ऊपर की space |
| margin-right | 20px | दाएँ की space |
| margin-bottom | 10px | नीचे की space |
| margin-left | 20px | बाएँ की space |
| margin | 10px 20px | Shorthand (शॉर्टहैंड) |
| margin: auto | – | Element को center करता है (तत्व को केंद्र में लाता है) |
Pro Tips
- Layout को साफ़ और समान दूरी पर दिखाने के लिए margins ज़रूर use करें।
- Elements को center करने के लिए margin: auto; best option है।
- Margin collapse समझना बहुत जरूरी है — इससे unwanted gaps avoid होते हैं।
- Responsive design के लिए margin: 2% जैसे relative units use कर सकते हैं।
Final Thoughts
- CSS Margins एक invisible लेकिन powerful property है
- जो layout को balance, beauty और breathing space देती है।
- बिना margin के कोई design congested लगता है,
- इसलिए margin हमेशा thoughtfully use करें।