HTML किसी वेबसाइट की बुनियादी संरचना (Basic Structure) या कंकाल (Skeleton) बनाने का काम करती है। जैसे ईंटों और सीमेंट से एक घर की नींव और दीवारें बनती हैं, वैसे ही HTML से एक वेबपेज का ढांचा बनता है। सरल भाषा में, एक HTML डॉक्यूमेंट ठीक वैसा ही है जैसे एक किताब का अध्याय। इसमें शीर्षक, उपशीर्षक, पैराग्राफ, और विराम चिन्ह होते हैं, और इन सभी को परिभाषित करने का काम HTML करता है।
इस अध्याय में, हम HTML की तीन सबसे महत्वपूर्ण अवधारणाओं को गहराई से समझेंगे: Tags, Elements, और Attributes।
HTML Basics क्या है?
चटीएमएल बेसिक्स में वे सभी मूलभूत अवधारणाएं और तत्व शामिल हैं जो एक वेबपेज की बुनियादी संरचना और सामग्री को परिभाषित करते हैं। सबसे पहले, एचटीएमएल दस्तावेज़ की मूल संरचना होती है, जिसमें <!DOCTYPE html> घोषणा, <html> रूट एलिमेंट, और <head> व <body> सेक्शन शामिल होते हैं। <head> सेक्शन में मेटाडेटा जैसे टाइटल, कैरेक्टर एन्कोडिंग, और विवरण शामिल होते हैं, जबकि <body> में वह सभी दृश्य सामग्री होती है जो उपयोगकर्ता को दिखाई देती है।
एचटीएमएल बेसिक्स की नींव टैग(Tags), एलिमेंट(Elements) और एट्रिब्यूट(Attributes) इन तीन मूलभूत अवधारणाओं पर टिकी हुई है। अब इन तीनो का विस्तार से अध्ययन करते है।
1- HTML टैग (HTML Tag) क्या है?
HTML टैग वे बुनियादी निर्देश (Basic Instructions) हैं जिनका उपयोग वेब ब्राउज़र को यह बताने के लिए किया जाता है कि वेबपेज की सामग्री (Content – जैसे टेक्स्ट, इमेज, वीडियो) को कैसे प्रदर्शित (Display) और संरचित (Structure) करना है। टैग्स हमेशा कोण कोष्ठक (Angle Brackets ) < और > के भीतर लिखे जाते हैं। ये HTML के बिल्डिंग ब्लॉक्स हैं।
एक HTML टैग का मूल स्वरूप (Basic Syntax):
शुरुआती/ओपनिंग टैग (Opening Tag):
<tagname>समापन/क्लोजिंग टैग (Closing Tag):
</tagname>
ओपनिंग और क्लोजिंग टैग के बीच का कंटेंट ही वह भाग होता है जिस पर टैग का प्रभाव लागू होता है।
हर HTML टैग की सामान्य संरचना इस प्रकार होती है:
<opening-tag> Content </closing-tag>
उदाहरण:
<p>यह एक पैराग्राफ है।</p>
इस उदाहरण में:
<p>ओपनिंग टैग है जो पैराग्राफ की शुरुआत दर्शाता है।यह एक पैराग्राफ है।वह कंटेंट है जो उपयोगकर्ता को दिखेगा। इसी पर टैग का प्रभाव लागू है।</p>क्लोजिंग टैग है जो पैराग्राफ का अंत दर्शाता है। क्लोजिंग टैग में एक फॉरवर्ड स्लैश/होता है।
पूरी इस संरचना “(<p>यह एक पैराग्राफ है।</p>)” को एक HTML एलिमेंट (Element) कहा जाता है।
टैग्स के प्रकार (Types of Tags)
HTML टैग्स को मुख्य रूप से तीन प्रमुख आधारों पर वर्गीकृत किया जाता है:
- स्वरूप के आधार पर वर्गीकरण (Classification based on Form/Syntax)
- कार्य के आधार पर वर्गीकरण (Classification based on Function/Usage)
- सिमेंटिक आधार पर वर्गीकरण (Classification based on Semantics)
1. स्वरूप के आधार पर वर्गीकरण (Classification based on Form/Syntax)
यह वर्गीकरण इस बात पर निर्भर करता है कि टैग को बंद करने के लिए क्लोजिंग टैग की आवश्यकता है या नहीं।
A. पेयर्ड टैग (Paired Tags) / कंटेनर टैग (Container Tags)
ये टैग्स वे हैं जिनके लिए एक ओपनिंग टैग (<tagname>) और एक क्लोजिंग टैग (</tagname>) दोनों की आवश्यकता होती है। इन्हें कंटेनर टैग कहा जाता है क्योंकि वे कंटेंट को अपने भीतर कंटेन (contain) या रैप (wrap) करते हैं।
विशेषता: कंटेंट इन दोनों टैग्स के बीच रखा जाता है।
उदाहरण:
पैराग्राफ:
<p>यह कंटेंट है।</p>एन्कर (लिंक):
<a href="page.html">अगला पेज</a>बॉडी:
<body>...</body>
उदाहरण: <p>... </p>, <div>...</div>, <h1>...</h1>
नोट: अधिकांश कंटेंट-टैग इन्हीं श्रेणी में आते हैं; इन्हें सही नेस्टिंग (nesting) की आवश्यकता होती है।
B. वॉयड टैग (Void Tags) / सेल्फ-क्लोजिंग टैग (Self-Closing Tags)
ये टैग्स वे हैं जिन्हें क्लोज करने के लिए एक अलग क्लोजिंग टैग की आवश्यकता नहीं होती है। ऐसा इसलिए है क्योंकि ये टैग किसी कंटेंट को रैप नहीं करते, बल्कि ये अपने आप में ही एक कार्य (Action) करते हैं या पेज में कुछ एम्बेड (Embed) करते हैं।
विशेषता: ये स्टैंडअलोन (standalone) टैग होते हैं।
उदाहरण:
लाइन ब्रेक:
<br>(एक नई लाइन शुरू करता है)हॉरिज़ॉन्टल रूल:
<hr>(एक क्षैतिज रेखा खींचता है)इमेज:
<img src="pic.jpg" alt="Description">(इमेज को पेज में एम्बेड करता है)इनपुट:
<input type="text">(इनपुट फ़ील्ड बनाता है)
प्रमुख void टैग्स: <br>, <hr>, <img>, <input>, <meta>, <link>, <area>, <col>, <base>, <source>, <track>, <embed>।
2. कार्य के आधार पर वर्गीकरण (Classification based on Function/Usage)
यह वर्गीकरण इस बात पर आधारित है कि टैग ब्राउज़र में कंटेंट को कैसे प्रदर्शित करता है और वह किस उद्देश्य को पूरा करता है।
A. ब्लॉक-लेवल टैग (Block-Level Tags):
ये टैग्स डिस्प्ले होने पर एक पूरा ब्लॉक (पूरी चौड़ाई) घेरते हैं। जब भी कोई ब्लॉक-लेवल एलिमेंट शुरू होता है, यह अपने आप एक नई लाइन से शुरू होता है और उसके बाद आने वाला एलिमेंट भी नई लाइन से शुरू होता है। ये वेबपेज के प्रमुख संरचनात्मक खंड (structural sections) बनाने के लिए उपयोग किए जाते हैं।
विशेषता: ये डिफ़ॉल्ट रूप से पैरेंट कंटेनर की 100% चौड़ाई लेते हैं।
उदाहरण:
शीर्षक:
<h1>से<h6>पैराग्राफ:
<p>डिवीजन:
<div>संरचनात्मक टैग:
<header>,<nav>,<section>,<article>,<footer>
B. इनलाइन टैग (Inline Tags):
ये टैग्स केवल उतनी ही जगह घेरते हैं जितनी उन्हें अपने कंटेंट को प्रदर्शित करने के लिए चाहिए होती है। ये उसी लाइन पर बने रहते हैं जहाँ उन्हें रखा जाता है, और उनके बाद आने वाला कंटेंट भी उसी लाइन पर आगे बढ़ता रहता है। इनका उपयोग ब्लॉक-लेवल कंटेंट के भीतर छोटे भागों को फॉर्मेट करने के लिए किया जाता है।
विशेषता: ये केवल कंटेंट की चौड़ाई तक सीमित रहते हैं।
उदाहरण:
लिंक:
<a>इमेज:
<img>स्पैन:
<span>(टेक्स्ट के एक छोटे से हिस्से को स्टाइल करने के लिए)फॉर्मेटिंग:
<strong>(महत्वपूर्ण टेक्स्ट),<em>(जोरदार टेक्स्ट)
3. सिमेंटिक आधार पर वर्गीकरण (Classification based on Semantics)
HTML5 के आने के बाद, टैग्स को उनके अर्थ (Meaning) के आधार पर वर्गीकृत करना भी महत्वपूर्ण हो गया है।
A. सिमेंटिक टैग (Semantic Tags)
ये वे टैग्स हैं जो ब्राउज़र और डेवलपर दोनों को कंटेंट के अर्थ या उद्देश्य के बारे में बताते हैं। ये टैग्स SEO, एक्सेसिबिलिटी और कोड की पठनीयता (Readability) के लिए महत्वपूर्ण हैं।
कार्य: कंटेंट को अर्थपूर्ण संदर्भ (Meaningful context) प्रदान करना।
उदाहरण:
<header>,<nav>,<article>,<footer>,<strong>,<time>।
B. नॉन-सिमेंटिक टैग (Non-Semantic Tags)
ये टैग्स कंटेंट को बस एक सामान्य कंटेनर के रूप में रैप करते हैं और उसके अर्थ के बारे में कुछ नहीं बताते हैं। इनका मुख्य उद्देश्य स्टाइलिंग (CSS) या JavaScript के लिए हुक (Hook) प्रदान करना होता है।
कार्य: केवल कंटेनर के रूप में कार्य करना।
उदाहरण:
<div>और<span>।
HTML टैग्स को सिर्फ “markup” के रूप में न देखें — उन्हें डाक्यूमेंट का अर्थ (semantics), एक्सेसिबिलिटी, और SEO संकेतक मानकर उपयोग करें।
समुचित वर्गीकरण — सिंटैक्स, सेमान्टिक अर्थ, कंटेंट-मॉडल और उपयोग-केस के आधार पर — आपको शुद्ध, मॉडर्न और भविष्य-सुलभ कोड लिखने में मदद करेगा।
2- HTML Elements (एलिमेंट्स) क्या है?
HTML एलिमेंट्स आपके वेबपेज के निर्माण खंड (Building Blocks) हैं। यह वह संपूर्ण इकाई है जो ब्राउज़र को कंटेंट को संरचित (structure) करने और प्रदर्शित (display) करने का निर्देश देती है।
एक HTML एलिमेंट, किसी भी वेबपेज पर जानकारी को संरचित करने की सबसे छोटी स्वतंत्र इकाई है। यह ओपनिंग टैग, कंटेंट और क्लोजिंग टैग (कुछ अपवादों को छोड़कर) से मिलकर बनता है।
<p> (opening tag), "यह एक पैराग्राफ है।" (content), और </p> (closing tag) — एक HTML Element कहलाता है।एक एलिमेंट तीन भागों से मिलकर बनता है:
Opening Tag — एलिमेंट की शुरुआत दर्शाता है।
Content — टैग के बीच का वास्तविक डेटा।
Closing Tag — एलिमेंट की समाप्ति दिखाता है (सिवाय Void elements के)।
उदाहरण:
<h1> = opening tag, "HTML सीखना आसान है" = content, </h1> = closing tag।HTML एलिमेंट्स के प्रकार (Types of HTML Elements)
HTML Elements (तत्वों) को कई दृष्टिकोणों से वर्गीकृत किया जाता है:
1. कंटेनर एलिमेंट्स (Container Elements)
ये एलिमेंट्स सामग्री को contain करते हैं और opening-closing tag जोड़ी में आते हैं।
Example:
शीर्षक
यह एक पैराग्राफ है
- पहला आइटम
- दूसरा आइटम
2. रिक्त एलिमेंट्स (Empty Elements) या वॉइड एलिमेंट्स (Void Elements)
ये एलिमेंट्स किसी सामग्री को contain नहीं करते और self-closing होते हैं।
Example:
3. ब्लॉक-लेवल एलिमेंट्स (Block-Level Elements)
पूरी available width occupy करते हैं
हमेशा new line से start होते हैं
Top और bottom margin लेते हैं
ब्लॉक-लेवल एलिमेंट्स की सूची:
, ,
-, , , -
,