2015-06-04 7 views
5

मुझे Text में वर्णों की अनुमति देने में कोई प्रतिबंध नहीं मिला है, क्या इसका मतलब यह है कि त्रुटियों की अनुमति है या क्या ऐसे प्रतिबंध हैं जो सामान्य रूप से HTML दस्तावेज़ों को प्रभावित करते हैं?क्या एचटीएमएल 5 वाक्यविन्यास में "पाठ" का अर्थ "कोई चरित्र" है?

उदाहरण के लिए Character Reference Section कहा गया है कि:

आंकिक केरेक्टर सन्दर्भ रूपों [...] संदर्भ के लिए किसी भी यूनिकोड कोड U + 0000, U + 000D, स्थायी रूप से अपरिभाषित यूनिकोड वर्ण (अलावा अन्य बिंदु अनुमति दी जाती है noncharacters), सरोगेट्स (यू + डी 800-यू + डीएफएफएफ), और अंतरिक्ष पात्रों के अलावा अन्य चरित्रों को नियंत्रित करें।

क्या वे पात्र अभी भी टेक्स्ट में अपने "अनपेक्षित" रूप में अनुमत हैं? जैसे attribute value: <span title="Hello ␀ World"></span> जहां ␀ यू +0000 नल चरित्र है ( यू + 2400)।

उत्तर

1

आपका पृष्ठ और आपके मार्कअप में आपके चयनित वर्ण सेट के अनुसार परिभाषित किया गया है। यदि आप किसी चरित्र सेट को परिभाषित नहीं करते हैं, तो ब्राउज़र अनुमान लगाएगा या अपना डिफ़ॉल्ट विकल्प डालेगा (आमतौर पर, जो भी कम से कम प्रतिबंधित है)। चरित्र सेट को आपके दस्तावेज़ के head अनुभाग में charset विशेषता के साथ meta tag का उपयोग करके परिभाषित किया गया है।

<meta charset="UTF-8" /> 

इस विशेषता के मान वर्ण सेट Internet Assigned Numbers Authority (IANA) द्वारा निर्धारित किसी भी हो सकता है: इस का सबसे आम उदाहरण UTF-8 वर्ण सेट का उपयोग करता है।परिभाषित चरित्र सेट की पूरी सूची here उपलब्ध है।

इसके अतिरिक्त, पर विशिष्ट प्रतिबंध कुछ विशिष्ट तत्वों (या तत्वों के प्रकार) के भीतर उपयोग किए गए पाठ से अनचाहे हो सकते हैं। इस मामले में, आपको उस टैग या टैग के प्रकार के विनिर्देशों को पढ़ना होगा, या उन्हें अपने ampersand-encoded html entities escape values के साथ बदलकर प्रश्नों के वर्णों से बचें।

+0

धन्यवाद, क्या यह U + 0000 NULL जैसे अक्षर शामिल है? (मैं तदनुसार अपना प्रश्न अपडेट करता हूं) –

+0

@ User7623045 बैकस्लैश का उपयोग अक्षर से बचने के लिए किया जाता है, इसलिए आपके उदाहरण में, \ 0' वास्तव में बच निकला है। ऐसा लगता है कि आपके द्वारा लिंक किए गए दस्तावेज़ बस यह कह रहे हैं कि आपको शून्य मूल्य से बचने के लिए एम्पर्सेंड तकनीक का उपयोग करने की अनुमति नहीं है। जो कुछ भी मैंने पढ़ा है, उसके अनुसार, जब तक आपके चरित्र सेट में शून्य मान न हो, तब तक तकनीकी रूप से इसे आपके मार्कअप में अनचाहे करने के लिए कुछ भी नहीं रोक रहा है। –

+0

जहां तक ​​मुझे एचटीएमएल में पता है, ब्लैकस्लैश को अन्य पात्रों से बचने के लिए एक चरित्र के रूप में उपयोग नहीं किया जाता है (जो कि संस्थाओं के लिए उपयोग किया जाता है)। '\ 0' का उपयोग अभी किया गया था क्योंकि मैं एक प्रश्न में वास्तविक यू +0000 नल चरित्र नहीं डाल सकता (शायद मैं एक भिन्न प्लेसहोल्डर का उपयोग करके इसे और अधिक स्पष्ट कर सकता हूं)। –

0

मुझे नहीं लगता कि संदर्भ में टेक्स्ट पर कोई प्रतिबंध है जो आपने इंगित किया है। यहां पाठ का अर्थ सभी अनुमत वर्णमाला, संख्याएं और अल्फान्यूमेरिक वर्ण हैं।

0

जवाब लिंक आपके द्वारा दी गई है:

पाठ तत्वों के अंदर की अनुमति दी है, मूल्यों, और टिप्पणियों जोड़कर देखते हैं। अतिरिक्त की कमी है क्या पर रखा जाता है और क्या पर जहां पाठ, डाला जा अन्य वर्गों

अब में वर्णित के रूप में अगर हम CDATA sections के लिए वाक्य रचना परिभाषा करने के लिए जाना है आधारित पाठ में अनुमति नहीं है :

CDATA भाग इस क्रम में, निम्न घटक से मिलकर चाहिए:

  1. स्ट्रिंग " <! [सीडीएटीए ["।
  2. वैकल्पिक रूप से, पाठ, अतिरिक्त प्रतिबंध के साथ कि पाठ में स्ट्रिंग नहीं होनी चाहिए "]]>
  3. स्ट्रिंग "]]>"।

तो सामग्री के हर प्रकार के प्रतिबंध की यह स्वयं के सेट चरित्र प्रतिबंध पाठ के लिए पर है, और पाठ सिर्फ इतने पर सभी पात्रों, प्रतीकों की सुपरसेट परिभाषित करने के लिए प्रयोग किया जाता है ...

+0

धन्यवाद, मैं पूछ रहा था क्योंकि जब मैं गुणों के लिए अनुभाग में पढ़ता हूं तो मैं थोड़ा उत्सुक था: > विशेषता मान टेक्स्ट और चरित्र संदर्भों का मिश्रण हैं [..]। और चरित्र संदर्भ खंड बताता है कि: > संख्यात्मक वर्ण संदर्भ रूप [..] को यू +0000, यू + 000 डी के अलावा किसी भी यूनिकोड कोड बिंदु को संदर्भित करने की अनुमति है, स्थायी रूप से अपरिभाषित यूनिकोड वर्ण (noncharacters), सरोगेट्स (यू + डी 800-यू + डीएफएफएफ), और अंतरिक्ष पात्रों के अलावा अन्य वर्णों को नियंत्रित करें। मैं शायद इसके लिए एक कारण था और उन पात्रों को पाठ में अनदेखा भी मना कर दिया जा सकता है। –

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