2009-11-27 19 views
6

मुझे आज एक वरिष्ठ डेवलपर द्वारा पूछा गया था कि अगर मैं खुले वेब के लिए कुछ (व्यक्तिगत/गैर-वाणिज्यिक) लिखने जा रहा था तो मैं किस प्रकार का काम करता हूं।कौन सा HTML डॉकटाइप?

मैंने जवाब दिया, <!doctype html>, जिस पर मुझे सदमे, डरावनी और आश्चर्य के रूप में बधाई दी गई और फिर खुद को समझाने के लिए कहा गया।

मेरे दिमाग में, यह एक अच्छा उम्मीदवार है क्योंकि वर्तमान ब्राउज़र (आईई, एफएफ, ओपेरा, सफारी) इसे देखेगा और सामग्री को मानक मोड में स्विच करेगा - भले ही वे HTML5 लागू नहीं करते हैं। अगर मैं वास्तव में एचटीएमएल 5 तत्वों का लाभ लेना चाहता हूं, तो मैं उन जावा टैग्स का संदर्भ बनाने के लिए कुछ जावास्क्रिप्ट का उपयोग कर सकता हूं, आईई (उदा। document.createElement('article');) द्वारा मान्यता प्राप्त नहीं है और फिर उनके साथ काम करें जैसे कि वे डोम के मूल भाग थे।

क्या यह वाकई इतना बुरा जवाब था? आपने क्या जवाब दिया और क्यों?

+0

मुझे लगता है कि यह तर्क है कि HTML ड्यूट टाइप [गैर-प्रयोगात्मक] W3C प्रमाणीकरण उपकरण पर सही ढंग से मान्य नहीं होगा? –

+2

Google google.com – powtac

+1

पर '' का उपयोग करता है Google भी अवैध HTML का उपयोग करता है। – Quentin

उत्तर

6

जबकि <!doctype html> पूरी तरह से ठीक है, WHAT-WG recommendation is to use <!DOCTYPE html>, बस अगर आप XHTML5 के रूप में दस्तावेज़ की सेवा समाप्त करते हैं (जिस स्थिति में पूंजीकरण महत्वपूर्ण हो जाता है)।

@ डेविड डोरवर्ड (अभी तक टिप्पणी करने में असमर्थ, इसलिए ...) मैं HTML5 के आपके प्रतिनिधित्व से असहमत हूं। जबकि नई सामग्री (संरचनात्मक तत्व इत्यादि) वर्तमान में ब्राउज़र द्वारा समर्थित रूप से समर्थित हैं, एचटीएमएल 5 9% एचटीएमएल 4 परिभाषित त्रुटि हैंडलिंग (अंत में) के साथ है। ब्राउज़र एचटीएमएल 5 को एचटीएमएल 4 के समान बनाते हैं, इसलिए मानते हैं कि आप संरचनात्मक तत्वों का उपयोग नहीं करते हैं (div अभी भी काम करता है) अंतर कम हैं। Validator.nu W3 के HTML4.1 सख्त सत्यापनकर्ता से बेहतर परिणाम देता है, और अधिक तेज़ी से विकसित किया जा रहा है, और यह एक विस्तृत विस्तृत नमूना पर आधारित है।

मेरी सलाह इस समय के लिए HTML5 में नई चीजों को अनदेखा करना और HTML4 के लिए एक अधिक सटीक कल्पना के रूप में इसका इलाज करना होगा। कोई नुकसान और कई लाभ नहीं हैं।

3

<!doctype html> .. ठीक लग रहा है

क्या इस नए DOCTYPE के बारे में अच्छा है, विशेष रूप से, यह है कि सभी मौजूदा ब्राउज़र (आईई, एफएफ, ओपेरा, सफारी) इसे देख और मानकों मोड में सामग्री को बदलने जाएगा - भले ही वे एचटीएमएल 5 लागू नहीं करते हैं। इसका मतलब है कि आप आज एचटीएमएल 5 का उपयोग करके अपने वेब पेज लिखना शुरू कर सकते हैं और उन्हें बहुत, बहुत लंबे समय तक चल सकते हैं।/http://ejohn.org/blog/html5-doctype/

3

यह वास्तव में इस तरह के एक बुरा जवाब था?

<!DOCTYPE html> कोई बुरा जवाब नहीं था।

आपने क्या जवाब दिया और क्यों?

मैं सामान्य रूप में choosing a doctype के बारे में मेरे डिब्बाबंद जवाब दे दिया है चाहते हैं, भले ही मैं अपने नए निजी प्रकाशनों के लिए <!DOCTYPE html> का उपयोग करें।

2

एचटीएमएल 5 - प्रयोगात्मक, अपरिपक्व QA टूल है जो एक अभी भी अस्थिर लक्ष्य है। (और यदि आपको बुनियादी संरचनात्मक तत्वों को पहचानने के लिए जावास्क्रिप्ट (जिसे बंद किया जा सकता है) का उपयोग करना है तो 'ईप!')।

एक्सएचटीएमएल - इंटरनेट एक्सप्लोरर के साथ काम करने के लिए परिशिष्ट सी हैकरी की आवश्यकता है। डीटीडी एचटीएमएल 4 से कम अभिव्यक्तिपूर्ण हैं।

एचटीएमएल 4 - परिपक्व, अच्छी तरह से परीक्षण, ज्यादातर ब्राउज़रों द्वारा समर्थित, कोई हैकरी की आवश्यकता नहीं है। एक्सएमएल टूल्स द्वारा पार्स नहीं किया जा सकता है (लेकिन कुछ लोग आंतरिक रूप से वेबपृष्ठों पर इनका उपयोग करते हैं)

सख्त - एक अच्छा कोर।

संक्रमणकालीन - सख्त प्लस सामान जो (कुछ अपवादों के साथ) से बचा जाना चाहिए।

इसलिए, HTML 4.01 सख्त शायद सबसे अच्छा विकल्प होगा। जाहिर है अपवाद हैं, लेकिन मैं इसे शुरुआती बिंदु बना दूंगा।

+0

सवाल पूरी तरह से सिद्धांत के बारे में था, हालांकि वास्तविक तत्वों का उपयोग नहीं किया गया था। – Ms2ger

+0

एक डॉक्टरेट का उपयोग करना जो आपके द्वारा उपयोग किए जा रहे तत्वों को मान्य करने पर "झूठी" सकारात्मक फेंकता है। एक डॉक्टरेट का उपयोग करना जो आपके द्वारा उपयोग किए जाने वाले तत्वों की एक बड़ी श्रृंखला को पहचानने से रोकता है कि आप (या आपकी टीम के किसी अन्य सदस्य) को दुर्घटनाग्रस्त हो गया है। डॉक्टरेट दस्तावेज़ से बहुत निकटता से जुड़ा हुआ है, इसे कुछ स्वतंत्र रूप से मानना ​​मूर्खतापूर्ण है। – Quentin

+0

मुझे नहीं पता कि यह क्यों नीचे मतदान किया गया था। यह प्रत्येक सिद्धांत के लिए विचारों का एक अच्छा बुलेट सारांश है। –

1

मैं आपके जैसा ही जवाब दूंगा क्योंकि आप सही हैं और अब मैं नीचे दिए गए कई अच्छे लिंक में दिए गए कारणों के लिए किसी भी नए वेब पेज के लिए किसी भी अन्य डॉक्टरेट का उपयोग नहीं करता हूं (नीचे एनी के उत्तर सहित वह ओपेरा के लिए काम करता है)।

1

सबसे पहले मैं कहूंगा कि डॉक्टरेट को पहले स्थान पर पेश नहीं किया जाना चाहिए था। आप पाठ/एचटीएमएल माइमटाइप के अलावा किसी अन्य चीज़ के साथ क्रॉस ब्राउज़र पेजों की सेवा नहीं कर सकते हैं और मुझे डीटीडी पर शुरू नहीं करना है।

सभी कार्यप्रणाली मानक मोड को ट्रिगर करने के लिए होती हैं और केवल इसलिए आवश्यक है क्योंकि कई साइटें मानकों के लिए नहीं बनाई गई हैं, अकेले w3c विनिर्देश दें। यदि सिद्धांत के पास केवल एक उद्देश्य है तो इसे सरल बनाएं। एचटीएमएल 5 बिल्कुल ठीक है। डेवलपर्स को यह नहीं बताते कि हमें मानक मोड को चालू या बंद करने की तुलना में डक्टटाइप का कोई अन्य अर्थ नहीं है।

'वरिष्ठ' डेवलपर को अपने काम के साथ मिलना चाहिए और लोगों को इस तरह की पागल चीजों के बारे में परेशान करना बंद करना चाहिए।

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