क्या हमें अभी भी HTML5 में अंतिम स्लैश की आवश्यकता है?


122

HTML5 में, क्या हमें अभी भी XHTML की तरह अंतिम स्लैश की आवश्यकता है?

<img src="some_image.png" />

अगर मैंने इसे गिराया, तो चेतावनी भी नहीं। लेकिन कुछ ऑनलाइन दस्तावेज़ों से लगता है कि अंतिम स्लैश को अभी भी img, लिंक, मेटा, br, आदि जैसे टैग के लिए आवश्यक है।


6
फिर भी ? क्या HTML के किसी भी संस्करण को सभी टैग बंद करने की आवश्यकता थी?
गाबे

9
@ Gabe XHTML 1.0 सख्त को इसकी आवश्यकता है। मेरा मतलब है, वेब पेज आमतौर पर ठीक लोड करेंगे, लेकिन इसे अमान्य माना जाता है।
CaptSaltyJack

3
हां, लेकिन वह X सिर्फ वहां नहीं है क्योंकि X शांत है, HTML और XHTML के बीच काफी अंतर है।

1
@ कैप्ट: आप सही हैं, लेकिन यह केवल एक मुद्दा होना चाहिए अगर आपका सिद्धांत एक्सएचटीएमएल इंगित करता है।
गाबे

जवाबों:


80

img टैग शून्य तत्व हैं, इसलिए उन्हें अंतिम टैग की आवश्यकता नहीं है।

शून्य तत्व क्षेत्र, आधार, br, कर्नल, कमांड, एम्बेड, hr, img, input, keygen, लिंक, मेटा, परम, स्रोत, ट्रैक, wbr

...

शून्य तत्वों में केवल एक प्रारंभ टैग होता है; अंतिम टैग शून्य तत्वों के लिए निर्दिष्ट नहीं होने चाहिए।

W3C | WHATWG

कहा जा रहा है कि यह HTML5 में सख्त पार्स नहीं है, इसलिए यह कोई बड़ा नुकसान नहीं करेगा।


बस जिज्ञासु, क्योंकि मेरा संपादक (कोमोडो) संकेत देता है अगर मैं टाइप करता हूं '<img src = "x"> और हिट दर्ज करें। यह HTML5 मोड में ट्रेलिंग स्लैश की अपेक्षा करता है और मैं यह सुनिश्चित करना चाहता था कि यह सही व्यवहार था।
CaptSaltyJack

5
यह HTML, XHTML नहीं है, इसलिए इसकी आवश्यकता नहीं है। सौभाग्य से, पार्सर्स अभी भी एक्सएचटीएमएल-शैली के अंत-स्लैश को ठीक समझते हैं, इसलिए इसे वहां छोड़ने में कोई नुकसान नहीं है। यदि आवश्यक हो तो आसान XHTML को पीछे की ओर परिवर्तित करने का मतलब है।
रात्रि

4
@ फ्रीड्रिकल: एक अनुगामी स्लैश एक शून्य तत्व के लिए वैकल्पिक है, लेकिन एक अंतिम टैग अमान्य होगा।
Ry-

26
जबकि सवाल एंड स्लैश (जैसे <br/) के बारे में है, यह जवाब केवल एंड टैग (उदाहरण <br></br>) को संदर्भित करता है ।
फ्री रेडिकल

12
@FreeRadical सही है। यह उत्तर तकनीकी रूप से गलत है, क्योंकि यह भ्रमित an ending slashकरता है an end tag, और इस प्रकार यह उद्धृत किए गए विशेष पैराग्राफ को गलत समझता है। इससे @ यानिसड्रन का भ्रम होता है। @ मिनिटेक सही मायने में बताता है कि क्या सच है।
टूलमेकरसैट

94

HTML 5 में, शून्य स्लैश शून्य तत्वों पर वैकल्पिक हैimg (मैं इसे इसलिए जोड़ रहा हूं क्योंकि वर्तमान में स्वीकृत उत्तर केवल कहता है: "शून्य टैग शून्य तत्वों के लिए निर्दिष्ट नहीं होने चाहिए", और शून्य तत्वों में समापन स्लैश को संबोधित नहीं करता है)।

Http://www.w3.org/TR/html5/syntax.html#start-tags (संख्या 6) से उद्धृत :

फिर, यदि तत्व शून्य तत्वों में से एक है, या यदि तत्व एक विदेशी तत्व है, तो एक एकल "/" (यू + 002 एफ) चरित्र हो सकता है। इस चरित्र का शून्य तत्वों पर कोई प्रभाव नहीं है, लेकिन विदेशी तत्वों पर यह प्रारंभ टैग को स्व-समापन के रूप में चिह्नित करता है।


यह एचटीएमएल 5 नहीं है। दरअसल, HTML के पुराने संस्करणों में <br/>या <img ... />त्रुटियां थीं।
जज

@jj मैं HTML5 डॉक्स को उद्धृत करता हूं, इसलिए मुझे समझ नहीं आता कि यह क्यों नहीं सोचते कि यह एचटीएमएल 5 नहीं है। और वास्तव में, अन्य संस्करणों में, ऐसे स्लैश किए गए त्रुटियां थीं।
फ्री रेडिकल

निश्चित रूप से, मेरा कहने का मतलब है "क्या हमें अभी भी HTML5 में अंतिम स्लैश की आवश्यकता है" गलत सवाल है। हो सकता है कि मैं किसी दिन कुछ पौराणिक लिंक के साथ एक पूर्ण उत्तर लिखूं। IIRC यह इयान हिकसन (एचटीएमएल संपादक) के लिए एचटीएमएल 5 में अनुगामी स्लैश की अनुमति देने के लिए एक कठिन निर्णय था ।
जज

2

नहीं। एचटीएमएल 5 से पहले भी HTML को इसकी आवश्यकता नहीं है। यदि आप HTML विशेषताओं के साथ एक्सएचटीएमएल का उपयोग करने की योजना बनाते हैं, तो हाँ, यह आवश्यक है।


1
XHTML, HTML5 के समान नहीं है, सही है? यदि मेरा DOCTYPE सिर्फ "html" है, तो मुझे अनुगामी स्लैश की आवश्यकता नहीं है, सही है?
CaptSaltyJack

@CaptSaltyJack: सही है।
Ry-

1
@CaptSaltyJack - HTML5 में साधारण HTML और XHTML दोनों शामिल हैं। XHTML को सभी तत्वों को बंद करने की आवश्यकता है, लेकिन ब्राउज़रों के लिए, सिद्धांत का स्थिति पर कोई प्रभाव नहीं पड़ता है। फुलर स्पष्टीकरण के लिए, stackoverflow.com/questions/2662508/… पर
Alohci


1

शून्य तत्वों के लिए अंत स्लैश वैकल्पिक है।

दोनों मान्य HTML5 हैं:

<img src="some_image.png" />

तथा

<img src="some_image.png">

शून्य तत्व हैं:

  • area
  • base
  • br
  • col
  • embed
  • hr
  • img 👍
  • input
  • link
  • meta
  • param
  • source
  • track
  • wbr

दिलचस्प के अलावा:

शून्य तत्वों की कोई सामग्री नहीं हो सकती है (क्योंकि कोई अंतिम टैग नहीं है, कोई भी सामग्री प्रारंभ टैग और अंतिम टैग के बीच नहीं डाली जा सकती है)।

अधिक विवरण: https://html.spec.whatwg.org/multipage/syntax.html#elements-2


यहां SO-प्रश्न भी देखें:
HTML5 में स्व-समापन टैग (शून्य तत्व)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.