5 मिनट पढ़ें · मुफ़्त · बिना लॉगिन
हर HTML element का एक display मान होता है। यह तय करता है कि element पेज पर कैसे दिखेगा: क्या वह अपने लिए पूरी लाइन लेगा, या दूसरे elements के बगल में बैठेगा? क्या वह जगह लेगा भी या नहीं? display property आपको वह व्यवहार बदलने देती है।
दो elements जिन्हें आप पहले से जानते हैं, अंतर साफ़ दिखाते हैं। <div> block है — वह पूरी चौड़ाई तक फैलता है और अगली चीज़ को नई लाइन पर धकेल देता है। <span> inline है — वह सिर्फ अपने text जितना चौड़ा होता है और लाइन के अंदर बैठता है। एक ही पेज, एक ही CSS, पूरी तरह अलग व्यवहार।
Block element नई लाइन से शुरू होता है और अपने parent की पूरी चौड़ाई लेता है। Headings, paragraphs, lists और divs डिफ़ॉल्ट रूप से block होते हैं। आप उनकी width और height तय कर सकते हैं, और चारों तरफ margins जोड़ सकते हैं। यह पेज के बड़े हिस्सों का सामान्य व्यवहार है।
Inline element नई लाइन से शुरू नहीं होता। वह text के बहाव के अंदर बैठता है, सिर्फ अपने content जितना चौड़ा। Links और spans डिफ़ॉल्ट रूप से inline होते हैं। यहाँ वह बात है जिस पर beginners सबसे ज़्यादा अटकते हैं: width और height inline elements पर काम नहीं करते, और ऊपर-नीचे के margins नज़रअंदाज़ कर दिए जाते हैं। अगर आप <span> पर width लगाते हैं और कुछ नहीं होता, तो यही वजह है।
inline-block बीच का रास्ता है। Element दूसरों के बगल में लाइन में बैठता है, जैसे inline element — लेकिन width, height और margins सब काम करते हैं, जैसे block element। Horizontal menu बनाने का यही क्लासिक तरीका है: हर link एक छोटा block है, और blocks साथ-साथ बैठते हैं।
display: none element को पेज से पूरी तरह हटा देता है। वह सिर्फ अदृश्य नहीं होता — वह कोई जगह भी नहीं लेता, और दूसरे elements उसके चारों ओर सिमट जाते हैं। Menus, popups और extra sections इसी तरह छिपाए जाते हैं, जब तक उनकी ज़रूरत न हो।
visibility: hidden भी element को छिपाता है, पर एक बड़े अंतर के साथ: खाली जगह ठीक वहीं रहती है जहाँ element था। Layout नहीं हिलता। display: none तब इस्तेमाल करें जब आप चाहते हैं कि element चला जाए, और visibility: hidden तब जब आप चाहते हैं कि वह छिपा रहे पर पेज अपना आकार बनाए रखे।
.menu-link {
display: inline-block;
width: 120px;
padding: 10px;
text-align: center;
}
.hidden-box {
display: none;
}
.kept-space {
visibility: hidden;
}
display बदलने से element का मतलब नहीं बदलता — inline बना <div> अब भी div ही है। सिर्फ यह बदलता है कि browser उसे कैसे बनाता है। HTML वैसा ही रहता है; सिर्फ presentation बदलती है।display: inline-block सबसे आसान रास्ता है। इसमें न floats चाहिए, न flexbox, और हर link की अपनी width, padding और background colour हो सकती है।<span> या <a> पर width या height लगाना और हैरान होना कि कुछ बदलता क्यों नहीं।display: none तब इस्तेमाल करना जब मतलब visibility: hidden था, इसलिए element के गायब होते ही पूरा layout उछल जाता है।display: none से छिपाना और उम्मीद करना कि वह अब भी clickable या पढ़ने लायक रहेगी।display: block लगाना, फिर उसे padding देना भूल जाना।display: none element और उसकी जगह को हटा देता है; visibility: hidden उसे छिपाता है पर जगह बचा लेता है।.menu a { display: inline-block; } — हर menu link एक छोटा block बन जाता है जो अब भी लाइन में बैठता है, इसलिए चारों links साथ-साथ बैठते हैं।.menu a { width: 110px; padding: 10px; } — width और padding यहाँ सिर्फ इसलिए काम करते हैं क्योंकि links inline-block हैं; सादे inline links पर वे नज़रअंदाज़ हो जाते।.menu a:hover { background-color: #1d4ed8; color: white; } — mouse के नीचे वाला link नीला हो जाता है, ताकि visitor देख सके कि वह क्या click करने वाला है।.hidden-note { display: none; } — यह बॉक्स पेज से पूरी तरह हट गया है; नीचे वाला text ऊपर खिसककर gap भर देता है।.kept-space { visibility: hidden; } — यह बॉक्स अदृश्य है, पर उसकी खाली जगह ठीक वहीं है जहाँ थी, इसलिए layout नहीं हिलता।.notice { display: block; } — notice एक block है, इसलिए वह नई लाइन से शुरू होती है और पेज की पूरी चौड़ाई तक फैलती है।<!DOCTYPE html>
<html>
<head>
<title>Display Values — Class Menu</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #f8fafc;
}
h1 {
text-align: center;
color: #1e3a5f;
}
.menu {
text-align: center;
}
.menu a {
display: inline-block;
width: 110px;
padding: 10px;
margin: 4px;
background-color: #dbeafe;
color: #1e3a5f;
text-align: center;
text-decoration: none;
border-radius: 6px;
}
.menu a:hover {
background-color: #1d4ed8;
color: white;
}
.box {
border: 2px solid #94a3b8;
padding: 12px;
margin: 16px auto;
width: 320px;
background-color: white;
}
.hidden-note {
display: none;
}
.kept-space {
visibility: hidden;
}
.notice {
display: block;
background-color: #fef3c7;
padding: 12px;
text-align: center;
}
</style>
</head>
<body>
<h1>Class 10 — Menu</h1>
<div class="menu">
<a href="#">Home</a>
<a href="#">Timetable</a>
<a href="#">Results</a>
<a href="#">Contact</a>
</div>
<div class="box">
<p>This is a normal box. It is a block, so it takes a full line.</p>
</div>
<div class="box hidden-note">
<p>You cannot see this box. display: none removed it completely.</p>
</div>
<div class="box kept-space">
<p>You cannot see this box either, but its empty space is still here.</p>
</div>
<div class="notice">Notice: exams start on Monday. Reach school by 8 AM.</div>
</body>
</html>
नीचे दिया गया कोड बदलें और चलाएँ दबाएँ — परिणाम तुरंत दिखेगा। कोई फाइल सहेजनी नहीं है, कोई लॉगिन नहीं चाहिए।
AI आपके लिए कोड लिख सकता है, लेकिन वह आपके लिए सोच नहीं सकता। जब आप HTML खुद सीखते हैं, तो आपका दिमाग असली कौशल बनाता है: आप समझते हैं कि पेज ऐसा क्यों दिखता है, टूटने पर उसे ठीक कर सकते हैं, और परीक्षा या इंटरव्यू में बिना मदद के जवाब दे सकते हैं। यही कौशल नौकरी दिलाता है — कॉपी किया हुआ जवाब नहीं।
सभी 30 पाठ पूरे करें, टेस्ट पास करें (80%), ₹10 दें और अपना सर्टिफिकेट पाएँ।
टेस्ट देंदेखकर सीखना पसंद है? वीडियो कोर्स में वही विषय एक-एक करके सिखाए जाते हैं।
Free tutorials teach you the basics. Our paid courses add live projects, mentorship and a certificate.
Browse all coursesAsk about courses, website & more
Request human callback:
Download karne ke liye login karo. Login ke baad yahi page pe rahoge!
Naya ho? Register karo →