html5
  • character-encoding
  • 2012-09-13 6 views 15 likes 
    15

    एक उदाहरण HTML दस्तावेज़ HTTP पर लिया गया का अभाव:क्या एचटीएमएल 5 एचटीएमएल दस्तावेजों के लिए एक डिफ़ॉल्ट वर्ण एन्कोडिंग निर्दिष्ट करता है यदि कोई वर्ण एन्कोडिंग की आपूर्ति नहीं की जाती है?

    • एक HTTP Content-Type हैडर
    • एक HTML <meta charset="<character encoding>" />
    • एक HTML <meta http-equiv='Content-Type' content='Type=text/html; charset=<character encoding>'>

    साथ एचटीएमएल 5 के संबंध में, एक डिफ़ॉल्ट, उदाहरण के लिए है यूटीएफ -8, चरित्र एन्कोडिंग के रूप में माना जाता है? या यह डिफ़ॉल्ट रूप से चुनने के लिए HTML दस्तावेज़ को पढ़ने वाला एप्लिकेशन पूरी तरह से है?

    उत्तर

    14

    चारसेट इन नियमों का उपयोग निर्धारित होता है:

    1. उपयोगकर्ता ओवरराइड।
    2. "सामग्री-प्रकार" फ़ील्ड में एक HTTP "वर्णसेट" पैरामीटर।
    3. एचटीएमएल दस्तावेज़ में किसी भी अन्य डेटा से पहले एक बाइट ऑर्डर मार्क।
    4. एक "वर्णमाला" विशेषता के साथ एक मेटा घोषणा।
    5. "सामग्री-प्रकार" पर सेट "http-equiv" विशेषता के साथ एक मेटा घोषणा और "वर्णमाला" के लिए एक मान सेट।
    6. निर्दिष्ट मानववादी विश्लेषण।

    ... और फिर ...

    1. वर्णसेट उर्फ ​​मिलान में यूनिकोड तकनीकी स्टैंडर्ड # 22 द्वारा निर्धारित नियमों के अनुसार दिए गए वर्ण एन्कोडिंग स्ट्रिंग सामान्यीकृत करें।
    2. कुछ समस्याग्रस्त एन्कोडिंग को ओवरराइड करें, यानी जानबूझकर कुछ एन्कोडिंग का इलाज करें जैसे कि वे अलग-अलग एन्कोडिंग थे। सबसे आम ओवरराइड यूएस-एएससीआईआईआई और आईएसओ -885 9 -1 को विंडोज -1252 के रूप में पेश कर रहा है, लेकिन इस तालिका में सूचीबद्ध कई अन्य एन्कोडिंग ओवरराइड हैं। विनिर्देश नोट्स के रूप में, "उपरोक्त तालिका के अनुसार कुछ एन्कोडिंग के रूप में कुछ एन्कोडिंग के इलाज की आवश्यकता डब्ल्यू 3 सी कैरेक्टर मॉडल विनिर्देश का एक विलुप्त उल्लंघन है।"

    लेकिन सबसे महत्वपूर्ण बात यह है:

    आप हमेशापर एक वर्ण एन्कोडिंग हर HTML दस्तावेज़ को निर्दिष्ट करना चाहिए, या बुरी चीजें नहीं होगा। आप इसे कठिन तरीका (HTTP सामग्री-प्रकार शीर्षलेख), आसान तरीका (<meta http-equiv> घोषणा), या नया तरीका (<meta charset> विशेषता) कर सकते हैं, लेकिन कृपया इसे करें। वेब धन्यवाद।

    सूत्रों का कहना है:

    +0

    धन्यवाद, मैं सराहना करते हैं कि एक वर्ण एन्कोडिंग हमेशा परिभाषित किया जाना चाहिए।मैं उन दस्तावेज़ों को मान्य कर रहा हूं जिन पर मेरा कोई नियंत्रण नहीं है और मुझे पता होना चाहिए कि अगर किसी को निर्दिष्ट नहीं किया गया है तो मुझे डिफ़ॉल्ट एन्कोडिंग पर वापस जाना चाहिए या नहीं। –

    +1

    उसी तर्क का उपयोग करने पर विचार करें W3 सत्यापनकर्ता का उपयोग करता है। यह ओपन सोर्स है ताकि आप यह देखने के लिए अपने कोड को देख सकें कि यह क्या करता है। – ThiefMaster

    +1

    यह वास्तव में सवाल का जवाब नहीं देता है कि चरित्र सेट की आवश्यकता क्यों है, और डिफ़ॉल्ट सेट क्या है जो इतना बुरा है। इसके अलावा, क्या यह अभी भी जवाब है? यह लिखा गया था कि यह 2 साल हो गया है, और तब से ब्राउज़र को बहुत से अपग्रेड कर दिया गया है। आईई नहीं है, लेकिन पुराने संस्करण गिर गए हैं। – trysis

    संबंधित मुद्दे