يتم إنشاء بعض صفحات الويب وفقًا للمعايير ، ولكن هناك أيضًا الكثير من غير ذلك. حتى إذا لم تتمكن من إنشاء صفحات ويب تتبع المعايير ، فأنت تريد أن يعرض المتصفح تلك الصفحات بشكل صحيح وفقًا للمعايير. حاليًا ، تمتلئ عدد كبير من صفحات الويب بالكثير من التعليمات البرمجية غير القياسية ، ولا تزال تعمل بشكل صحيح. في الواقع ، سيتم عرض معظم التعليمات البرمجية المصممة للمتصفحات القديمة بشكل صحيح في المتصفحات الأحدث (على الرغم من أنه قد تكون هناك اختلافات في كيفية تقديمها). ما هو سبب هذا؟ في الواقع ، فإن اتباع أحدث المعايير بصرامة سيؤدي إلى تقويض أساس البقاء على قيد الحياة لتلك الصفحات. هذا بالتأكيد غير مقبول لأي متصفح يريد إحداث تغيير.
وضع عرض المتصفح
تشمل المتصفحات الحديثة أنماط عرض مختلفة ، بهدف دعم كل من صفحتين الويب التي تتبع المعايير وصفحات الويب المصممة للمتصفحات القديمة. من بينها ، يتم استخدام وضع المعايير (أي وضع العرض الصارم) لتقديم صفحات الويب التي تتبع أحدث المعايير ، في حين يتم استخدام وضع المراوغات (أي وضع العرض التقديمي أو وضع التوافق) لتقديم صفحات الويب المصممة للمتصفحات التقليدية. لاحظ أيضًا أن Mozilla/Netscape 6 أضافت وضعًا تقريبًا للمعايير لدعم صفحات الويب المصممة لإصدار أقدم من المعيار.
ما هو مفتاح Doctype؟
يعد إعلان Doctype الموضوع في الجزء العلوي من صفحة الويب هو مفتاح إدخال المتصفح في وضع العرض الصحيح. يتحول المتصفح تلقائيًا إلى وضع التقديم المناسب لعرض نوع المستند بشكل صحيح المحدد بواسطة إعلان DocType.
من الناحية النظرية ، يجب أن يكون هذا مفتاحًا بديهيًا للغاية. إذا أشار Doctype إلى أن صفحة الويب الحالية هي مستند يتوافق مع المعيار (أي HTML 4+ أو XHTML 1+) ، فسيتحول المتصفح إلى وضع المعايير. إذا لم يتم تحديد Doctype ، أو تم تحديد الإصدارات HTML 3.2 أو الأقدم ، يتم تبديل المتصفح إلى وضع المراوغات. وبهذه الطريقة ، يمكن للمتصفح عرض المستندات التي تتبع المعايير بشكل صحيح دون التخلي عن صفحات الويب القديمة تمامًا التي لا تتطابق مع المعايير.
مشكلة تبديل Doctype
ومع ذلك ، فإن تبديل Doctype هو حل غير مكتمل. حتى إذا كنت تستخدم إعلان Doctype في مستند الويب الخاص بك ، فقد لا يأخذ المتصفح وضع التقديم الذي تريد عرض صفحة الويب. هناك العديد من الأسباب ، بما في ذلك doctype للنموذج الخاطئ ، والبدايات المختلفة من <؟ xml إصدار = 1.0 الترميز = UTF-8؟>) والتي تتضمن صفحة الويب XHTML. ومع ذلك ، فإن الإصدارات الأقدم من Safari ، كلها تريد أن يكون السطر الأول من المستند هو إعلان Doctype. لذلك ، إذا كان هناك أي شيء آخر قبل ذلك (بما في ذلك XML Prolog) ، لم يتم التعرف على Doctype. لذلك ، فإن وجود XML Prolog سيحضر IE و Opera و Safari إلى وضع المراوغات. XML Prolog غير مطلوب ، لذلك يمكنك حذفها بأمان في صفحة الويب XHTML. ملاحظة: تأكد من تضمين سمة charset في علامة HTTP-EQUIV META لتعويض سمة الترميز المفقودة في Prolog XML.
عنوان URL المفقود أو عنوان URL النسبي:
في إعلان Doctype الكامل ، قم بتضمين عنوان URL لملف تعريف نوع المستند المقابل (DTD). إذا فقدت عنوان URL ، أو إذا تم تحديده ، في مسار نسبي (بدلاً من عنوان إنترنت مؤهل تمامًا) ، فستدخل معظم المتصفحات وضع المراوغات ، بغض النظر عن الوضع المحدد في إعلان Doctype.
Doctype من الشكل الخاطئ:
يكون المتصفح حساسًا للغاية لشكل وتنسيق إعلان Doctype ، وإذا كان لا يمكن التعرف على نموذج Doctype غير صحيح ، فسوف يجبر على وضع المراوغات (لهذا السبب ، نوصي بنسخ ولصق Doctype المعروف في المستند بدلاً من كتابته شخصيًا). سبب شائع لخطأ النموذج هو أن المساحة مفقودة بين الجزء الأول من Doctype وعنوان URL. انهيار doctype مقسمة إلى سطرين في خط واحد ، وغالبا ما تضيع هذه المساحة.
فترة الانتقال doctype:
عندما يتعامل المتصفح مع Doctype فترة الانتقال ، فمن الأرجح أن يعاني من مشاكل غير متناسقة. IE و Opera استخدام المعايير. Netscape 6 وما هي الإصدارات الأقدم من Safari تستخدم وضع المراوغات ؛ تستخدم إصدارات Netscape 7 و Mozilla 1 والإصدارات الأحدث من Safari وضع Netscape للمعايير تقريبًا ، وهو إصدار أفضل من وضع المعايير.
Doctype غير معروف:
هناك أيضًا تناقض عندما يتعامل المتصفح مع doctypes غير المعترف بها. IE و Opera سوف تدخل وضع المعايير ؛ بمعنى آخر ، يفترض أن Doctype غير المعترف به هو معيار جديد لم يتم دمجه في المتصفح. على العكس من ذلك ، سوف يتحول Netscape 6 إلى وضع المراوغات عند مواجهة docty غير المعترف بها.
قد يكون تبديل Doctype وسيلة فعالة للحصول على المتصفح لإدخال وضع التقديم الصحيح وعرض صفحة الويب بشكل صحيح ، شريطة أن تلاحظ تناقضات في متصفحات مختلفة ويمكنها تجنب مختلف المشكلات المختلفة.
2. استخدم إعلان doctype الصحيحقد نتجاهل هذا عند إنشاء الصفحات (بما في ذلك أنا ، عادةً ما أكون كسولًا لعدم كتابة واستخدام المتصفح الافتراضي). مع وصول الجنون الحالي لتوحيد ترميز صفحة الويب ، من الضروري للجميع فهم هذه التفاصيل ، والتي ستكون مفيدة. كما يقول المثل ، لا يوجد أمر بدون قواعد.
في حين أن معظم مستندات الويب لديها إعلانات Doctype في الأعلى ، فإن الكثير من الناس لا ينتبهون إليها. إنها واحدة من العديد من التفاصيل التي تكون قذرة بواسطة برنامج تأليف الويب عند إنشاء مستند جديد. بينما يتم التغاضي عن Doctype من قبل الكثيرين ، إلا أنه عنصر ضروري في أي مستند ويب يتبع المعايير. يؤثر Doctype على التحقق من الكود ويحدد كيفية عرض المتصفح في نهاية المطاف وثائق الويب الخاصة بك.
دور doctype
يشير عبارة DOCTYPE إلى ما يجب استخدام مجموعات القواعد من قبل القارئ لتفسير العلامات في المستند. في حالة مستندات الويب ، يكون برنامج القراءة عادةً برنامجًا مثل المستعرض أو جهاز التحقق ، والقواعد هي القواعد الواردة في تعريف نوع المستند (DTD) المنشور بواسطة W3C.
يتضمن كل DTD سلسلة من العلامات والسمات والخصائص المستخدمة لتمييز محتوى مستند الويب ؛ ويتضمن أيضًا القواعد التي تحدد العلامات التي يمكن أن تظهر في العلامات الأخرى. يحتوي كل معيار على شبكة الإنترنت (مثل HTML 4 FrameSet و XHTML 1.0 Transitional) على DTD الخاص به. إذا لم تتبع العلامات الواردة في المستند DTD المحدد بواسطة إعلان Doctype ، فلا يجوز عرض المستند بشكل صحيح في المتصفح بالإضافة إلى عدم تمرير التحقق من التعليمات البرمجية. المتصفح أكثر تسامحًا من جهاز التحقق لمشكلة العلامات غير المتسقة. ومع ذلك ، غالبًا ما تتسبب إعلانات Doctype غير الصحيحة في عرض صفحات الويب بشكل غير صحيح ، أو تسبب عدم عرضها على الإطلاق.
حدد doctype الصحيح
من أجل الحصول على إعلان doctype الصحيح ، فإن المفتاح هو جعل DTD يتوافق مع المعايير التي تتبعها المستند. على سبيل المثال ، على افتراض أن المستند يتبع معيار XHTML 1.0 الصارم ، يجب أن يشير إعلان Doctype للوثيقة إلى DTD المقابل. من ناحية أخرى ، من غير المناسب إذا كان إعلان Doctype يحدد XHTML DTD لكن المستند يحتوي على علامات HTML القديمة ؛ وبالمثل ، من غير المناسب أيضًا ما إذا كان إعلان Doctype يحدد HTML DTD لكن المستند يحتوي على علامات صارمة XHTML 1.0.
في بعض الأحيان ، لا يمكنك استخدام إعلان Doctype على الإطلاق. إذا لم يتم تحديد إعلان doctype صالح ، فسيستخدم معظم المتصفحات DTD افتراضي مدمج. في هذه الحالة ، سيستخدم المستعرض DTD المدمج لمحاولة عرض العلامة التي حددتها. بالنسبة لبعض القطع المؤقتة المتسرعة من المستندات (هناك العديد منها) ، يمكنك بالفعل التفكير في حذف إعلان Doctype وقبول الشاشة الافتراضية للمتصفح.
من الممكن تمامًا كتابة إعلان Doctype من الصفر والسماح له بالإشارة إلى DTD من اختيارك. ومع ذلك ، نظرًا لأن معظم مستندات الويب تحتاج إلى اتباع معيار الويب المعترف به دوليًا نشرته W3C ، فإن هذه المستندات تحتوي عادةً على أحد إعلانات Doctype القياسية التالية:
html 2: <! doctype html public -// ietf // dtd html 2.0 // en>
html 3.2: <! doctype html public -// w3c // dtd html 3.2 final // en>
html 4.01 صارم: <! doctype html public -// w3c // dtd html 4.01 // en http://www.w3.org/tr/html4/strict.dtd>
html 4.01 Transitional: <! doctype html public -// w3c // dtd html 4.01 Transitional // en http://www.w3.org/tr/html4/loose.dtd>
HTML 4.01 Frameset: <! Doctype Html Public -// W3C // DTD HTML 4.01 Frameset // en http://www.w3.org/tr/html4/frameset.dtd>
XHTML 1.0 Strict: <! doctype html public -// w3c // dtd xhtml 1.0 Strict // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd>
XHTML 1.0 Transitional: <! doctype html public -// w3c // dtd xhtml 1.0 transitional // en http://www.w3
XHTML 1.0 Frameset: <! Doctype Html Public -// W3C // DTD XHTML 1.0 Frameset // en http://www.w3
Xhtml 1.1: <! Doctype html public -// w3c // dtd xhtml 1.1 // en http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd>
XHTML 1.1 Plus Mathml Plus SVG: <! Doctype HTML Public-// W3C // DTD XHTML 1.1 Plus Mathml 2.0 Plus SVG 1.1 // EN http://www.w3
بالإضافة إلى إعلان Doctype المذكور أعلاه ، تستخدم بعض المستندات ذات المتطلبات الخاصة عدة إعلانات أخرى.
عادةً ما يكون إعلان Doctype هو السطر الأول من المستند ، قبل علامة <html> ومحتوى المستند الآخر. لاحظ أنه في مستند XHTML ، تظهر تعليمات معالجة XML (المعروفة أيضًا باسم XML Prolog) من حين لآخر أمام Doctype: <؟
للتأكد من عرض صفحة الويب بشكل صحيح وتجاوز التحقق بسلاسة ، باستخدام مفتاح doctype الصحيح. إن Doctypes معاكسة أو غير صحيحة أو غير صحيحة في الشكل هي المذنبين لعدد كبير من المشكلات.
عند تصميم صفحة ويب باستخدام DW ، قم بإنشاء ملف جديد وشاهد أن هناك دائمًا شيء أدناه في مقدمة الرمز.
<! doctype html public -// w3c // dtd html 4.01 Transitional // en http://www.w3 بعد الحذف ، سيستخدم المتصفح DTD الافتراضي.
3. أي نوع من doctype للاختيار
عندما تبدأ في إنشاء موقع يلبي المعايير ، فإن أول شيء تفعله هو إعلان Doctype الذي يلبي احتياجاتك.
تحقق من الكود الأصلي لهذه الصفحة ويمكنك أن ترى أن السطر الأول هو: <! doctype html public -// w3c // dtd xhtml 1.0 transitional // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-ransitional
افتح بعض المواقع التي تلبي المعايير ، مثل الموقع الشخصي لمطور برامج تصميم الويب الشهير Macromedia و Design Master Zeldman ، وسوف تجد نفس الرمز. رمز المواقع الأخرى التي تلبي المعايير (مثل K10K.NET) كما يلي:
<! doctype html public -// w3c // dtd xhtml 1.0 frameset // en http://www.w3 http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd> br>. الرمز الكامل كما يلي:
<! doctype html public -// w3c // dtd xhtml 1.0 transitional // en http://www.w3 http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd>
أي نوع من doctype يجب أن نختار
الوضع المثالي هو بالطبع DTD صارم ، ولكن بالنسبة لمعظمنا المصممين الجدد في معايير الويب ، فإن DTD Transition (XHTML 1.0 الانتقالية) هو حاليًا خيار مثالي (بما في ذلك هذا الموقع ، الذي يستخدم أيضًا DTD الانتقالية). نظرًا لأن هذا DTD يتيح لنا أيضًا استخدام الهوية وعناصر وسمات طبقة العرض التقديمي ، فمن الأسهل أيضًا تمرير التحقق من رمز W3C. ملاحظة: يشير شعار وسمات طبقة العرض التقديمي المذكورة أعلاه إلى تلك العلامات المستخدمة بحتة للتحكم في الأداء ، مثل الجداول لتنضيد الأنواع ، وعلامات ألوان الخلفية ، إلخ. في XHTML ، يتم استخدام الهوية لتمثيل الهياكل ، وليس لتنفيذ التعبيرات. انتقالنا هو فصل البيانات والتمثيلات في نهاية المطاف.
على سبيل المثال: نموذج عاري يغير الملابس. النماذج مثل البيانات ، وتتجلى الملابس في الشكل ، ويتم فصل النماذج والملابس ، بحيث يمكنك تغيير الملابس حسب الرغبة. اتضح أنه في HTML4 ، يتم خلط البيانات والأداء معًا ، ومن الصعب للغاية تغيير نموذج التعبير في وقت واحد. هاها ، إنه مجردة بعض الشيء ، ونحن بحاجة إلى فهم هذا المفهوم تدريجياً أثناء عملية التقديم.
تجديد
يجب وضع إعلانات Doctype في الجزء العلوي من كل مستند XHTML ، قبل كل شيء الرمز والهويات.
4. هذه هي الطريقة التي يحدد بها المسؤول doctype html public! doctype
-----------------------------------------------------------------------------------
يحدد تعريف نوع المستند (DTD) الذي يتبعه مستند HTML.
جديد على Microsoft؟ Internet Explorer 6. يمكنك استخدام هذا البيان لتحويل Internet Explorer 6 وبعد ذلك إلى وضع التوافق القياسي.
قواعد
HTML تسجيل توافر العناصر العليا // المؤسسة // نوع العلامات // تعريف URL لغة اللغة
القيم الممكنة
عنصر المستوى الأعلى: يحدد نوع العنصر العليا المعلن في DTD. هذا يتوافق مع نوع مستند SGML المعلن. HTML الافتراضي. HTML.
التوفر: يحدد ما إذا كان المعرف العام الرسمي (FPI) هو كائن أو مورد للنظام يمكن الوصول إليه للجمهور. الافتراضي العام. كائن يمكن الوصول إليه للجمهور. موارد النظام ، مثل الملفات المحلية أو عناوين URL.
التسجيل: حدد ما إذا كانت المنظمة مسجلة من قبل المنظمة الدولية للتوحيد (ISO). + الافتراضي. اسم المنظمة مسجل. - اسم المنظمة غير مسجل. فرقة عمل هندسة الإنترنت (IETF) ورابطة الويب العالمية (W3C) ليست منظمات ISO مسجلة.
المنظمة: تحدد اسم المجموعة أو المنظمة التي تشير إلى إنشاء وصيانة DTD المشار إليها من خلال إعلان Doctype ، أي ownderid. IETF IETF. W3C W3C.
النوع: يحدد فئة النص العام ، أي نوع الكائن المشار إليه. DTD الافتراضي. DTD.
العلامة: يحدد وصف النص العام ، أي اسم وصفي فريد للنص العام المذكور. يمكن تضمين رقم الإصدار لاحقًا. HTML الافتراضي. HTML.
التعريف: حدد تعريف نوع المستند. توثيق الإطارات الإطارات. يستبعد صارمة جميع السمات والعناصر التمثيلية التي يرغب خبراء W3C في التخلص التدريجي ، لأن أوراق الأنماط مثالية بالفعل. يحتوي الانتقالي على جميع المحتويات باستثناء عنصر مجموعة الإطارات.
اللغة: تحدد لغة نصية عامة ، أي نظام ترميز لغة طبيعي يستخدم لإنشاء الكائن المرجع. تم كتابة تعريف اللغة مثل رمز اللغة ISO 639 (رسالتين رأس المال). en الافتراضي. إنجليزي.
عنوان URL: يحدد موقع الكائن المشار إليه.
تعليقات
يجب أن يظهر هذا الإعلان في بداية المستند ، قبل علامة HTML.
عنصر Doctype لا يحتاج إلى إغلاق العلامة.
هذا العنصر متاح في HTML لـ Microsoft؟ Internet Explorer 3.0.
يمكنك استخدام هذا الإعلان للتبديل إلى وضع التوافق القياسي الصارم في Internet Explorer 6 وما بعده. لتشغيل هذا المفتاح ، قم بتضمين إعلان Doctype في الجزء العلوي من المستند ، وتحديد علامة قانونية في الإعلان ، وفي بعض الحالات ، هناك حاجة أيضًا إلى تعريف و/أو عنوان URL.
ملاحظة في وضع التوافق القياسي ، لا يمكن ضمان التوافق مع الإصدارات الأخرى من Internet Explorer. عند تشغيل وضع التوافق القياسي ، قد يختلف سلوك تقديم المستند عن نسخة مستقبلية من Internet Explorer. إذا تم إصلاح المحتوى في الأصل (مثل محترق على قرص مضغوط) ، فيجب عدم استخدام هذا الوضع.
مثال
يوضح المثال التالي كيفية الاستخدام! تحدد إعلانات Doctype DTD التي يتوافق معها المستند وتحويل Internet Explorer 6 وبعد ذلك إلى وضع التوافق القياسي. تحدد الإعلانات في الأمثلة التالية امتثال HTML 4.0 DTD. الإعلان الثاني يحدد صارم. لم يتم تحديد الإعلان الأول. سيقوم كلا البيانين بتبديل Internet Explorer 6 وبعد ذلك إلى وضع التوافق القياسي.
<! doctype html public -// w3c // dtd html 4.0 // en>
<! doctype html public -// w3c // dtd html 4.0 Strict // en>
تحدد الإعلانات في الأمثلة التالية الامتثال DTD مع TransitionalHTML 4.0. الإعلان الثاني يحدد عنوان URL من DTD. لم يتم تحديد الإعلان الأول. سيقوم البيان الثاني بتبديل Internet Explorer 6 وبعد ذلك إلى وضع التوافق القياسي. البيان الأول لن.
<! doctype html public -// w3c // dtd html 4.0 transitional // en>
<! doctype html public -// w3c // dtd html 4.0 transitional // en
http://www.w3.org/tr/html4/loose.dtd>