क्वर्क्स मोड
HTML |
---|
Comparisons |
कम्प्यूटिंग में, क्वर्क्स मोड एक ऐसी तकनीक है जिसका उपयोग कुछ वेब ब्राउज़रो द्वारा मानक मोड में W3C और आईईटीएफ मानकों का कड़ाई से अनुपालन करने के अतिरिक्त पुराने वेब ब्राउज़रों के लिए प्रारुप किए गए वेब पृष्ठ के साथ पिछड़े संगतता बनाए रखने के लिए किया जाता है। यह व्यवहार बाद में मानक में संकलित किया गया है, इसलिए जो पहले मानक मोड था, अब इसे साधारण रूप से क्वर्क्स मोड कहा जाता है।
संक्षिप्त विवरण
एक वेब पृष्ठ की संरचना और उपस्थिति को दो मानकीकृत भाषाओं के संयोजन द्वारा वर्णित किया जाता है।
- एचटीएमएल एक मार्कअप भाषा है जो वेब के उपयोग के लिए प्ररूपित की गई है, जिसमें पृष्ठ की संरचना और विषय वस्तु का वर्णन किया जाता है।
- सीएसएस एक सामान्यीकृत स्टाइल शीट भाषा है जो विभिन्न मीडिया में पृष्ठ को कैसे दिखाया जाना चाहिए को निर्धारित करती है जैसे स्क्रीन प्रदर्शन के लिए दृश्य शैलियाँ, पृष्ठ को प्रिंट करने पर उपयोग करने के लिए प्रिंट शैलियाँ, स्क्रीन रीडर द्वारा उच्चारित करने पर उपयोग करने के लिए श्रव्य शैलियाँ आदि।
यद्यपि, अधिकांश पुराने वेब ब्राउज़रों ने या तो इन भाषाओं के लिए पूरी तरह से विन्यास का पालन नहीं किया था या फिर यह निर्धारण संकलन के पहले विकसित किए गए थे, उदाहरण के लिए, 2000 में रिलीज़ हुई बृहत प्लेटफॉर्म के लिए माइक्रोसॉफ्ट इंटरनेट अन्वेषक संस्करण 5.0 एक प्रमुख वेब ब्राउज़र था जिसमें पूर्ण समर्थन सीएसएसस्तर 1 के लिए था।[1] इस परिणामस्वरूप, कई पुराने वेब पेज पुराने ब्राउज़रों की अपूर्ण या गलत कार्यान्वयन पर आधारित थे और ये केवल तब इच्छित रूप से प्रदर्शित होंगे जब ऐसे ब्राउज़र में प्रस्तुत किए जाएंगे।
मुख्य वेब ब्राउज़रों में मानक एचटीएमएल और सीएसएस के समर्थन में काफी वृद्धि हुई है, लेकिन पुराने ब्राउज़रों के विचित्रताओं पर आधारित पुराने दस्तावेज़ों की विशाल संख्या वेब ब्राउज़र विकासकों के लिए एक बाधा प्रदान करती है। वे अपने समर्थन को मानक एचटीएमएल और सीएसएस के लिए सुधारना चाहते हैं, परंतु पुराने, मानकों के अनुरूप पृष्ठों के प्रतिष्ठान को भी बनाए रखना चाहते हैं। इसके अतिरिक्त, कई नए वेब पृष्ठ अभी भी पुराने तरीके में बनाए जा रहे हैं, क्योंकि ब्राउज़र विकासकों द्वारा प्रस्तुत योग्यता, उपायों के कारण मानकीकृत विधियों की समझ नियमित रूप से आवश्यक नहीं होती है।
सबसे अधिक संख्या के वेब पृष्ठों के साथ संगतता बनाए रखने के लिए, आधुनिक वेब ब्राउज़र सामान्यतः कई प्रतिपादन मोड के साथ विकसित किए जाते हैं: "क्वर्क्स मोड" में पृष्ठों को एचटीएमएल और सीएसएस निर्देशिका के अनुसार प्रेरित किया जाता है, जबकि "क्वर्क्स मोड" में पुराने ब्राउज़रों के व्यवहार की अनुकरण की कोशिश की जाती है। कुछ ब्राउज़र जैसे कि मोज़िला के गेको प्रतिपादन इंजन पर आधारित ब्राउज़र या इंटरनेट अंवेषक 8 स्ट्रिक्ट मोड में "लगभग मानकों" मोड का उपयोग भी करते हैं, जिसका प्रयास किया जाता है कि दोनों के मध्य समझौता किया जाए, जिससे एक विचित्रता को टेबल सेल के आकारणीकरण के लिए लागू किया जा सके जबकि अन्य मानकों का पालन किया जाए।
मोड अंतर और उदाहरण
क्वर्क्स और नो-क्वर्क्स मोड के मध्य एक प्रमुख अंतर है सीएसएस इंटरनेट अंवेषक बॉक्स प्रारूप बग के संबंध में इंटरनेट अंवेषक के 6 संस्करण से पहले, इंटरनेट अंवेषक ने एक कलन विधि का उपयोग किया था जिससे किसी तत्व के बॉक्स की चौड़ाई का निर्धारण किया जाता था, जो सीएसएस निर्देशिका में विवरणित कलन विधि के विपरीत था। इंटरनेट अंवेषक की लोकप्रियता के कारण, बहुत सारे पृष्ठ ऐसे बनाए गए थे जो इस गैर-मानक कलन विधि पर आधारित थे। 6 संस्करण के उपरांत, इंटरनेट अंवेषक नो-क्वर्क्स मोड में प्रेरित समय सीएसएस निर्देशिका के कलन विधि का उपयोग करता है और क्वर्क्स मोड में प्रेरित करते समय पिछले, गैर-मानक कलन विधि का उपयोग करता है।
एक अन्य महत्वपूर्ण अंतर है कुछ प्रकार के इंलाइन सामग्री की लंबवत संरेखण; कई पुराने ब्राउज़रों में छवियों को उनके संरचनात्मक बॉक्स के नीचे की सीमा से संरेखित किया जाता था, यद्यपि सीएसएस निर्देशिका मांगती है कि वे बॉक्स में पाठ की बेसलाइन से संरेखित होने चाहिए। नो-क्वर्क्स मोड में, गेको आधारित ब्राउज़र बेसलाइन से संरेखित होंगे, और क्वर्क्स मोड में वे नीचे संरेखित होंगे।[2]
इसके अतिरिक्त, कई पुराने ब्राउज़र तालिकाओं में फ़ॉन्ट शैलियों की अनुग्रहीता को कार्यान्वित नहीं करते थे। इस परिणामस्वरूप, फ़ॉन्ट शैलियों को दस्तावेज़ संपूर्णता के लिए एक बार और फिर से तालिका के लिए निर्दिष्ट करना पड़ता था, यद्यपि सीएसएस निर्देशिका मांगती है कि फ़ॉन्ट शैलिंग तालिका में अनुग्रहीत होनी चाहिए। यदि फ़ॉन्ट आकार सम्बन्धी इकाइयों का उपयोग करके निर्दिष्ट किया जाता है, तो एक मानकों का पालन करने वाला ब्राउज़र मूल फ़ॉन्ट आकार को अनुग्रहीत करेगा, और पुनः तालिका में सम्बन्धित फ़ॉन्ट आकार को लागू करेगा: उदाहरण के लिए, एक पृष्ठ जिसने 80% का मूल फ़ॉन्ट आकार और 80% का तालिका फ़ॉन्ट आकार निर्दिष्ट किया है मानकों का पालन करने वाले ब्राउज़र में, तालिकाओं को 64% का फ़ॉन्ट आकार प्रदर्शित करेगा इस परिणामस्वरूप, क्वर्क्स मोड में ब्राउज़रों सामान्यतः फ़ॉन्ट आकारों को तालिकाओं में अनुग्रहीत नहीं करते हैं।[3]
सीमित क्वर्क्स मोड
इन ब्राउज़रों में "सीमित क्वर्क्स मोड" एक तीसरा संगतता मोड है, जो सीएसएस 2 निर्देशिका के अनुसार तालिका कक्षों के "पारंपरिक" ऊंचाई को बनाए रखता है। इनमें सम्मिलित हैं: सफारी, ओपेरा 7.5 और उसके बाद के संस्करण, 1.0.1 के बाद से सभी जियोको-आधारित ब्राउज़र जैसे फ़ायरफ़ॉक्स और इंटरनेट अंवेषक 8[4]"लगभग मानक" मोड प्रतिपादन में एक अंतर होता है, जो केवल एक विवरण को छोड़कर "मानक" मोड के समान होता है। तालिका कक्षों में छवियों का अभिप्राय "क्वर्क्स" मोड की तरह ही संचालित किया जाता है, जो इंटरनेट अंवेषक 7 जैसे पुराने ब्राउज़रों के साथ से संगत है। इसका अर्थ है कि "क्वर्क्स" या "लगभग मानक" मोड में होने पर, "मानक" मोड के सापेक्ष में, तालिकाओं में स्लाइस-इमेज-इन-टेबल विन्यास को टूटने की संभावना कम होती है।[5]
विभिन्न प्रतिपादन मोड्स को प्रवर्तन करना
सामान्यतः, ब्राउज़रों को पेज में एक प्रलेख प्रकार घोषणा की उपस्थिति के आधार पर प्रतिपादन मोड का निर्धारण करना होता है। यदि पूर्ण डॉकटाइप उपस्थित होता है, तो ब्राउज़र नो -क्वर्क्स मोड का उपयोग करेगा, और यदि यह अनुपस्थित होता है, तो ब्राउज़र क्वर्क्स मोड का उपयोग करेगा। उदाहरण के लिए, निम्नलिखित डॉकटाइप के साथ प्रारंभ होने वाला एक वेब पेज नो -क्वर्क्स मोड को प्रेरित करेगा:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"
यह क्वर्क्स मोड को प्रेरित करेगा:निम्नलिखित डॉकटाइप वाक्य वाक्यांश संरचनात्मक रूप से अवैध है, जिसमें पब्लिक पहचानकर्ता कीवर्ड है, लेकिन कोई पब्लिक पहचानकर्ता नहीं है और कोई
एचटीएमएल दस्तावेज़ प्रकार परिभाषा का पहचानकर्ता यूआरएल नहीं है। इससे क्वर्क्स मोड प्रेरित होगा।
<!DOCTYPE html PUBLIC>
इसके अतिरिक्त, जो वेब पेज किसी डॉकटाइप को सम्मिलित नहीं करता है, वह क्वर्क्स मोड में प्रेरित होगा।
इसमें एक महत्वपूर्ण अपवाद है जो माइक्रोसॉफ्ट के इंटरनेट अंवेषक 6 ब्राउज़र के लिए है। यदि डॉकटाइप के पहले एक्सएमएल प्रोलॉग सम्मिलित होता है, तो इंटरनेट अंवेषक 6 उस पेज को क्वर्क्स मोड में प्रेरित करेगा, चाहे पूर्ण डॉकटाइप स्पष्ट किया जाए या न किया जाए। इस प्रकार, निम्नलिखित कोड के साथ शुरू होने वाला एक्सएचटीएमएल पृष्ठ IE 6 में क्वर्क्स मोड में प्रेरित होगा।
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
एक्सएमएल घोषणा के साथ समस्या इंटरनेट अंवेषक के संस्करण 7 में निश्चित की गई थी, जिसमें एक्सएमएल प्रोलॉग को आसानी से नजरअंदाज कर दिया गया था।[6] यद्यपि, उपस्थित और पुराने वेब ब्राउज़रों के साथ अधिकतम संगतता के लिए, वर्ल्ड वाइड वेब कंसोर्टियम, जो एक्सएचटीएमएल विनिर्देश को बनाए रखता है, सुझाव देता है कि एक्सएचटीएमएल दस्तावेजों के लेखक एक्सएमएल घोषणा को छोड़ने पर विचार कर सकते हैं।[7]
दस्तावेज़ प्रकारों की तुलना
हेनरी सिवोनेन ने विभिन्न प्रकार के दस्तावेज़ों की एक सूची संकलित की और यह दिखाते हुए कि सबसे सामान्य ब्राउज़रों में उनके साथ कैसे व्यवहार किया जाता है, यह दिखाते हुए कि क्या पृष्ठों को क्वर्क्स, मानक या लगभग मानक मोड में प्रस्तुत किया गया है। लगभग मानक मोड के लिए उपयोग किया जाने वाला मानदंड गैर-मानक तालिका सेल ऊँचाई प्रतिपादन है। यह तालिका सामग्री-प्रकार टेक्स्ट/एचटीएमएल के साथ दी गई सामग्री पर लागू होती है। सामग्री-प्रकारआवेदन /xhtml+xml के साथ प्रदान की जाने वाली सामग्री क्रोम, फ़ायरफ़ॉक्स, इंटरनेट अंवेषक 9, सफारी और ओपेरा में मानक मोड में प्रस्तुत की जाती है। इंटरनेट अंवेषक 6, 7 और 8 सामग्री प्रकार आवेदन /xhtml+xml को समर्थन नहीं करते हैं।[4]
Doctype | NS6 | Mozilla 0.9.5-1.0 | IE 8+ Firefox Chrome Safari Opera 7.5+ Netscape 7+ Mozilla 1.0.1+ Konq 3.5+ HTML5 spec |
IE 7 Opera 7.10 |
IE 6 Opera 7.0 |
Mac IE 5 | Konq 3.2 | |||
---|---|---|---|---|---|---|---|---|---|---|
None | Q | Q | Q | Q | Q | Q | Q | |||
HTML 2 | ||||||||||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
|
Q | Q | Q | Q | Q | Q | Q | |||
HTML 3 | ||||||||||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN//">
|
Q | Q | Q | Q | Q | Q | Q | |||
HTML 3.2 | ||||||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
Q | Q | Q | Q | Q | Q | Q | |||
HTML 4.01 | ||||||||||
Strict | with system identifier<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
S | S | S | A | A | A | A | ||
without system identifier<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
S | S | S | A | A | Q | A | |||
Transitional | with system identifier<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
S | S | A | A | A | A | Q | ||
without system identifier<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
Q | Q | Q | Q | Q | Q | Q | |||
HTML5 | ||||||||||
<!DOCTYPE html>
|
Q | S | S | A | A | A | ? | |||
XHTML Basic | ||||||||||
with system identifier and without XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
|
S | S | S | A | A | A | A | |||
XHTML 1.0 | ||||||||||
Strict | with system identifier and XML declaration<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
S | S | S | A | Q | A | Q | ||
with system identifier and without an XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
S | S | S | A | A | A | A | |||
without system identifier and without an XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
|
S | S | S | A | A | A | ? | |||
Transitional | with system identifier and with XML declaration<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
S | S | A | A | Q | A | Q | ||
with system identifier and without an XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
S | S | A | A | A | A | Q | |||
without system identifier and without an XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
|
S | S | A | A | A | A | ? | |||
XHTML 1.1 | ||||||||||
with system identifier and an XML declaration<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
S | S | S | A | Q | A | Q | |||
with system identifier and without XML declaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
S | S | S | A | A | A | A | |||
Doctype | NS6 | Mozilla 0.9.5-1.0 | IE 8+ Firefox Chrome Safari Opera 7.5+ Netscape 7+ Mozilla 1.0.1+ Konq 3.5+ HTML5 spec |
IE 7 Opera 7.10 |
IE 6 Opera 7.0 |
Mac IE 5 | Konq 3.2 |
मोड सत्यापन
अधिकांश ब्राउज़रों में, दस्तावेज़ ऑब्जेक्ट मॉडल एक्सटेंशन दस्तावेज़ कॉम्पैटमोड में वर्तमान पेज के लिए प्रेरित िंग मोड को दर्शाता है। मानक मोड और लगभग मानक मोड में,.दस्तावेज़मोड में "सीएसएस1कॉम्पैट" का मान होता है, जबकि क्वर्क्स मोड में यह "बैककॉम्पैट" के बराबर होता है।।[8]इसके अतिरिक्त,मोज़िला फ़ायरफ़ॉक्स और ओपेरा ब्राउज़र में एक पेज के लिए उपयोग में प्रेरित िंग मोड 'पृष्ठ जानकारी' सूचनात्मक बॉक्स पर दर्शाया जाता है।
संदर्भ
- ↑ "Cascading Style Sheets: CSS Browsers". World Wide Web Consortium. 19 December 2001. Retrieved 27 May 2007.
- ↑ "छवियाँ, टेबल्स, और रहस्यमय अंतराल". Mozilla Developer Center. Archived from the original on 22 May 2017. Retrieved 27 May 2007.
- ↑ "Quirks मोड में तालिका वंशानुक्रम को ठीक करना". Mozilla Developer Center. Archived from the original on 3 March 2016. Retrieved 27 May 2007.
- ↑ 4.0 4.1 Sivonen, Henri. "Doctype के साथ ब्राउज़र मोड सक्रिय करना". Retrieved 15 March 2011.
- ↑ "गेको का "लगभग मानक" मोड". Mozilla Developer Center. Archived from the original on 3 June 2004. Retrieved 27 May 2007.
- ↑ Wilson, Chris (15 August 2005). "The <?xml> prolog, strict mode, and XHTML in IE". IEBlog. MSDN. Retrieved 27 May 2007.
- ↑ "HTML Compatibility Guidelines". XHTML 1.0 The Extensible HyperText Markup Language (Second Edition). World Wide Web Consortium. 1 August 2002. Retrieved 14 February 2009.
- ↑ Koch, Peter-Paul (2 February 2009). "Miscellaneous". W3C DOM Compatibility - HTML. QuirksMode. Retrieved 14 February 2009.
बाहरी संबंध
- Quirks Mode Living Standard
- The W3C Markup Validation Service
- Testing doctype handling in browser
- Quirksmode.org: Quirks mode and strict mode
- Bookmarklet that reports the mode of a document
- Eric Meyer on CSS: Picking a Rendering Mode
- MDC explanation of Mozilla's DOCTYPE sniffing Archived 2016-10-13 at the Wayback Machine
- Documentation for quirks mode in Mozilla-based browsers
- Opera Software's explanation of quirks mode in their browser
- What happens in Quirks Mode?