Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> HTML

HTML एट्रिब्यूट्स का उपयोग कैसे करें

कुछ सबसे आम एट्रिब्यूट नामों और मानों को देखकर HTML एट्रिब्यूट्स का उपयोग करना सीखें।

HTML एट्रिब्यूट्स क्या हैं?

HTML में, एट्रिब्यूट्स मॉडिफायर टूल्स हैं जिनका उपयोग HTML एलिमेंट्स में अतिरिक्त जानकारी जोड़ने या उनके डिफ़ॉल्ट (आउट ऑफ द बॉक्स) व्यवहार को बदलने के लिए किया जाता है।

बिना किसी अतिरिक्त एट्रिब्यूट के एक HTML एलिमेंट इस तरह दिखता है:

<tag>Content</tag>

एट्रिब्यूट्स के साथ HTML एलिमेंट्स को इस तरह परिभाषित किया जाता है:

<tag attribute="value">Content</tag>

उस मॉडल को ध्यान में रखते हुए, आइए कुछ व्यावहारिक एट्रिब्यूट उदाहरण देखें।

Href एट्रिब्यूट

href एट्रिब्यूट HTML में सबसे महत्वपूर्ण एट्रिब्यूट्स में से एक है।

href URLs निर्दिष्ट करने के लिए उपयोग किया जाता है:

  • हाइपरलिंक्स (जिन्हें केवल "लिंक्स" भी कहा जाता है)।
  • या बाहरी संसाधनों को आयात करने के लिए, जैसे स्टाइल्स और स्क्रिप्ट्स।

href के लिए सबसे आम उपयोग का मामला एंकर एलिमेंट <a> पर लिंक URLs जोड़ना है:

<a href="url-path">Link text</a>

ये लिंक्स उपयोगकर्ताओं को पेज से पेज पर क्लिक करके नेविगेट करने की अनुमति देते हैं, या तो आंतरिक रूप से (उसी वेबसाइट/डोमेन पर), या बाहरी रूप से (अन्य वेबसाइट डोमेन पर)।

आंतरिक लिंक्स एक सापेक्ष पथ का उपयोग करते हैं:

<a href="/">Home</a>

एक मानक के रूप में, "/" किसी भी वेबसाइट पर फ्रंट पेज पर ले जाता है, जो index.html पेज है।

यदि आपके पास About नामक एक पेज है और एक संबंधित HTML दस्तावेज़ about.html कहलाता है, तो आप इसे इस तरह आंतरिक रूप से लिंक कर सकते हैं:

<a href="/about">About</a>

यह लिंक TechStacker के About पेज पर ले जाता है

बाहरी लिंक्स को एक निरपेक्ष पथ की आवश्यकता होती है:

<a href="https://www.youtube.com">YouTube.com पर जाएं</a>

Target एट्रिब्यूट

जब हम एंकर एलिमेंट के साथ काम कर रहे हैं, तो आइए एक और महत्वपूर्ण एंकर एलिमेंट एट्रिब्यूट, target एट्रिब्यूट पर एक नज़र डालें।

target एट्रिब्यूट निर्दिष्ट करता है कहां लिंक्स खुलने चाहिए जब उपयोगकर्ता उन पर क्लिक करते हैं।

उदाहरण के लिए, यदि आप नीचे दिए गए बाहरी लिंक पर क्लिक करते हैं तो आप YouTube.com पर उसी ब्राउज़र टैब विंडो में पहुंच जाएंगे जिसमें आप अभी हैं:

<a href="https://www.youtube.com/">YouTube.com पर जाएं</a>

YouTube.com पर जाएं

ऐसा इसलिए होता है क्योंकि डिफ़ॉल्ट रूप से <a> एलिमेंट्स में target एट्रिब्यूट होता है जिसका मान _self होता है — जिसका अर्थ है कि यह href लिंक मान को उसी विंडो में खोलता है जिसमें उपयोगकर्ता है।

तो यह लिंक एलिमेंट:

<a href="https://www.youtube.com/"></a>

कंप्यूटर/ब्राउज़र द्वारा इस तरह पढ़ा जाता है:

<a href="https://www.youtube.com/" target="_self"></a>

लेकिन क्या होगा यदि आप चाहते हैं कि लिंक्स नए ब्राउज़र टैब में खुलें?

कोई समस्या नहीं, आप डिफ़ॉल्ट _self मान को _blank मान से ओवरराइड कर सकते हैं:

<a href="https://www.youtube.com" target="_blank" rel="noopener" >YouTube.com पर जाएं (नए टैब में खुलता है)</a >

अब YouTube लिंक नए ब्राउज़र टैब में खुलेगा:

YouTube.com पर जाएं (नया टैब)

मैं इस अवसर का उपयोग अपने YouTube चैनल को बढ़ावा देने के लिए करूंगा:

मेरे YouTube चैनल (TechStacker) पर लिंक।

एंकर/लिंक एलिमेंट के बारे में और पढ़ें।

मान रहित एट्रिब्यूट्स

एक एट्रिब्यूट आमतौर पर एक एट्रिब्यूट नाम और एक एट्रिब्यूट मान से मिलकर बनता है, जैसे एंकर एलिमेंट उदाहरण में।

हालांकि, कभी-कभी मान (व्यवहार) एट्रिब्यूट नाम में अंतर्निहित होता है।

उदाहरण के लिए, HTML <script> एलिमेंट को संशोधित करने के लिए defer एट्रिब्यूट:

<script defer src="app.js"></script>

ध्यान दें कि defer एट्रिब्यूट में असाइनमेंट ऑपरेटर (=) या मान नहीं होता क्योंकि इसका व्यवहार अंतर्निहित है।

defer एक तथाकथित बूलियन एट्रिब्यूट है। बूलियन एक प्रकार के डेटा के लिए उपयोग किए जाते हैं जिनके केवल दो मान हो सकते हैं, true या false (या सक्षम/अक्षम)।

आइए defer एट्रिब्यूट पर करीब से नज़र डालें।

यह <script> एलिमेंट, बिना defer एट्रिब्यूट के, ब्राउज़र द्वारा लोड होते ही app.js मान से अपना src जावास्क्रिप्ट कोड निष्पादित करेगा:

<script src="app.js"></script>

डिफ़ॉल्ट रूप से, HTML दस्तावेज़ों को ऊपर से नीचे तक, एक समय में एक लाइन पार्स (पढ़ा) जाता है। इसका मतलब है कि यदि आप अपने दस्तावेज़ के शीर्ष पर कोई जावास्क्रिप्ट डालते हैं, तो यह आपके दस्तावेज़ के बाकी हिस्सों के पार्स होने से पहले निष्पादित होगा।

यह स्क्रिप्ट एलिमेंट का डिफ़ॉल्ट व्यवहार है।

लेकिन जब आप <script> एलिमेंट में defer जोड़ते हैं तो आप उस डिफ़ॉल्ट व्यवहार को अक्षम कर देते हैं:

<script defer src="app.js"></script>

अब, जावास्क्रिप्ट कोड तब तक निष्पादित नहीं होगा जब तक पूरा पेज लोड नहीं हो जाता।

शाब्दिक अर्थ में, defer का अर्थ है टालना/स्थगित करना/इंतजार करना।

स्पष्ट करने के लिए:

  • defer के बिना, जावास्क्रिप्ट लोड होते ही निष्पादित होता है।
  • साथ defer जावास्क्रिप्ट पूरे HTML पेज के लोड होने तक निष्पादित होने की प्रतीक्षा करता है।

यदि एट्रिब्यूट्स आपको भ्रमित करते हैं, तो चिंता न करें, एक बार जब आप उन्हें अभ्यास में उपयोग करना शुरू करते हैं तो यह हमेशा 10 गुना अधिक समझ में आता है।

कस्टम एट्रिब्यूट्स

आप कस्टम एट्रिब्यूट्स भी बना सकते हैं, जिन्हें आप जावास्क्रिप्ट से नियंत्रित कर सकते हैं। कस्टम एट्रिब्यूट नामों के पहले data- लेबल होना आवश्यक है:

<tag data-custom-attribute-name="value">Content</tag>

उदाहरण के लिए, मान लें हमारे पास "Apple" नामक एक फूड एलिमेंट है। जब कोई उपयोगकर्ता इस पर क्लिक करता है, तो हम एक पॉपअप डायलॉग बॉक्स में दिखाना चाहते हैं कि यह किस प्रकार का भोजन है।

ऐसा करने के लिए हम food-type नामक एक कस्टम एट्रिब्यूट बनाएंगे (याद रखें data- लेबल) और इसे <div> एलिमेंट में जोड़ देंगे जिसमें Apple टेक्स्ट है:

<div onclick="showDetailsBox(this)" id="apple" data-food-type="fruit"> Apple </div>

और वह जावास्क्रिप्ट जो इस सुविधा को काम करती है:

function showDetailsBox(food) { const foodType = food.getAttribute("data-food-type") alert(food.innerHTML + " is a " + foodType) }

यहां एक डेमो है।

HTML कोड कैसे काम करता है:

  • सबसे पहले, हमने <div> एलिमेंट में एक onclick एट्रिब्यूट जोड़ा। यह एक इवेंट एट्रिब्यूट है जो एक इवेंट लिसनर अटैच करता है जो सुनता है... आपने सही अनुमान लगाया, क्लिक!
  • फिर हम onclick एट्रिब्यूट को showDetailsBox(this) का एट्रिब्यूट मान असाइन करते हैं।
  • showDetailsBox() उस जावास्क्रिप्ट फ़ंक्शन का नाम है जिसे Apple टेक्स्ट एलिमेंट पर क्लिक करते ही कॉल किया जाता है।
  • (this) का this भाग एक आर्गुमेंट है जो उस ऑब्जेक्ट को संदर्भित करता है जिससे यह संबंधित है (this शुरुआती लोगों के लिए थोड़ा उन्नत है, अगर आप नहीं समझते तो ठीक है)।
  • id एक बिल्ट-इन HTML एट्रिब्यूट है जिसका उपयोग HTML एलिमेंट्स के लिए एक यूनिक id निर्दिष्ट करने के लिए किया जाता है। इस मामले में, हमारा यूनिक id apple है।

जावास्क्रिप्ट कोड कैसे काम करता है यह इस HTML ट्यूटोरियल के दायरे से बाहर है, इसलिए मैं आपको एक सरलीकृत व्याख्या दूंगा:

जब onclick इवेंट एट्रिब्यूट द्वारा showDetailsBox() फ़ंक्शन को कॉल किया जाता है, तो यह अपना कोड ब्लॉक { ... } निष्पादित करता है:

function showDetailsBox(food) { ... }

कोड ब्लॉक के अंदर पहली लाइन पर, जावास्क्रिप्ट कस्टम data-food-type एट्रिब्यूट वाले किसी भी HTML एलिमेंट को चुनता है, और इसे (और इसके एट्रिब्यूट मान को) foodType नामक वेरिएबल को असाइन करता है:

function showDetailsBox(food) { const foodType = food.getAttribute("data-food-type") ... }

दूसरी लाइन पर हम बिल्ट-इन alert() मेथड चलाते हैं (जो पॉपअप डायलॉग बॉक्स को संकेत देता है और उसे foodType का मान प्रदर्शित करने के लिए कहता है जो निश्चित रूप से fruit है:

function showDetailsBox(food) { const foodType = food.getAttribute("data-food-type") alert(food.innerHTML + " is a " + foodType) }

चिंता न करें यदि आप ऊपर दिए गए पूरे कोड उदाहरण को पूरी तरह से नहीं समझते हैं, तो पचाने के लिए बहुत कुछ है, खासकर शुरुआती के लिए। अभ्यास के साथ, यह समझ में आएगा!

HTML एट्रिब्यूट्स के बारे में अधिक विस्तृत जानकारी के लिए, मैं MDN वेब डॉक्स HTML एट्रिब्यूट रेफरेंस में खोज करने की सलाह देता हूं।

महत्वपूर्ण: महत्वपूर्ण सामग्री को डेटा एट्रिब्यूट्स के अंदर स्टोर न करें जो दृश्यमान और सुलभ होनी चाहिए, क्योंकि सहायक तकनीकें कभी-कभी उन्हें एक्सेस नहीं करती हैं। सर्च क्रॉलर भी डेटा एट्रिब्यूट मानों को इंडेक्स नहीं कर सकते — इसलिए यहां कोई महत्वपूर्ण SEO सामग्री न डालें।

  1. HTML में लिस्ट एट्रिब्यूट का उपयोग कैसे करें? HTML में लिस्ट एट्रिब्यूट का उपयोग कैसे करें?

    HTML में, हम <datalist> एलिमेंट का उपयोग प्री-डिफाइंड विकल्पों की एक सूची निर्दिष्ट करने के लिए करते हैं। यह सूची एक इनपुट एलिमेंट के लिए है। list एट्रिब्यूट इस <datalist> एलिमेंट को संदर्भित करता है। HTML5 ने list एट्रिब्यूट पेश किया।list एट्रिब्यूट एक <datalist> एलिमेंट को संदर्भ

  1. HTML data-* एट्रिब्यूट्स: कस्टम डेटा एम्बेड करना HTML data-* एट्रिब्यूट्स: कस्टम डेटा एम्बेड करना

    HTML data-* एट्रिब्यूट्स data-* एट्रिब्यूट्स (डेटा एट्रिब्यूट्स) किसी भी HTML एलिमेंट पर कस्टम डेटा संग्रहीत करने की अनुमति देते हैं। ये ग्लोबल एट्रिब्यूट्स हैं और सभी HTML एलिमेंट्स पर मान्य हैं। पेज और JavaScript के बीच निजी डेटा पास करने के लिए डिज़ाइन किए गए हैं। सिंटैक्स <element data-attri

  1. HTML एट्रिब्यूट्स HTML एट्रिब्यूट्स

    एट्रिब्यूट्स का उपयोग किसी एलिमेंट के लिए प्रॉपर्टीज़ सेट करने के लिए किया जाता है जैसे इमेज या कैनवास की चौड़ाई और ऊंचाई। सभी एलिमेंट्स में एट्रिब्यूट हो सकते हैं और ये अधिक जानकारी देते हैं। एट्रिब्यूट का एक नाम और एक मान होता है: उदाहरण के लिए: <canvas id=newCanvas width=400 height=300> अन्