لقد سُئلت اليوم عما إذا كان لدي أي فهم مفصل لعلامة <! doctype>؟ ، لقد صدمت للحظة ، لأنني رأيته في البداية اقترحت استخدام XHTML Transitional DTD على W3CSCHOOL ، ثم قمت بتمويل نوع مستند Dreamweaver الخاص بـ Dreamweaver إلى XHTML 1.0 الانتقالي بشكل افتراضي. لقد تم استخدامه أمرا مفروغا منه حتى الآن. الناس حقا الشيء الكسول. كلما كبروا ينموون ، يحصلون عليه. أشياء كثيرة تؤخذ دون وعي أمرا مفروغا منه. منذ أن سئلت ، ذهبت للعثور على المعلومات وتلخيصها. لنأخذها كملاحظة ~~
تعريف <! doctype> :يقع إعلان <! doctype> في الموضع الأمامي في المستند ، قبل علامة <html>. تخبر هذه العلامة المتصفح الذي يستخدمه مواصفات HTML أو XHTML للوثيقة.
يمكن أن تعلن هذه العلامة ثلاثة أنواع من DTD ، تمثل إصدارات صارمة وإصدارات انتقالية وإصدارات HTML القائمة على الإطار. (إذا لم تتبع العلامات الموجودة في المستند DTD المحدد بواسطة إعلان Doctype ، فلا يجوز عرض هذا المستند بشكل صحيح في المتصفح بالإضافة إلى عدم تمرير التحقق من التعليمات البرمجية.)
استخدام <! doctype> :<! doctype html public -// w3c // dtd xhtml 1.0 Strict // en http://www.w3 -// W3C // DTD XHTML 1.0 Strict // EN. سوف يفهم المتصفح كيفية العثور على DTD الذي يطابق هذا المعرف العام. إذا لم يتم العثور عليها ، فسيستخدم المستعرض عنوان URL بعد المعرف العام كموقع للبحث عن DTD.
-: يشير إلى أن اسم المنظمة غير مسجل. فرقة عمل هندسة الإنترنت (IETF) ورابطة الويب العالمية (W3C) ليست منظمات ISO مسجلة.
+ هو الافتراضي ، مما يشير إلى أن اسم المنظمة مسجل.
DTD: يحدد فئة النص العام ، أي نوع الكائن المشار إليه. الافتراضي هو DTD.
HTML: يحدد وصف النص العام ، أي اسم وصفي فريد للنص العام المشار إليه. يمكن تضمين رقم الإصدار لاحقًا. الافتراضي هو HTML.
عنوان URL: يحدد موقع الكائن المشار إليه.
صارم: استبعاد جميع السمات والعناصر التمثيلية التي يرغب خبراء W3C في التخلص منها.
ثلاثة أنواع من مستندات HTML:يحدد HTML 4.01 ثلاثة أنواع من المستندات: صارمة ، انتقالية ، وإطارات.
أ) إذا كنت بحاجة إلى ترميز نظيف لتجنب الالتباس في العرض التقديمي ، استخدم نوع DTD الصارم HTML:
<! doctype html public -// w3c // dtd html 4.01 // en http://www.w3.org/tr/html4/strict.dtd>
ب) يمكن أن تحتوي DTD الانتقالية على سمات وعناصر عرض تتوقع W3C الانتقال إلى أوراق الأنماط. إذا كان المستخدم يستخدم متصفحًا لا يدعم أوراق نمط متتالية (CSS) بحيث يتعين عليك استخدام سمات تقديم HTML ، فاستخدم نوع DTD الانتقالي:
<! doctype html public -// w3c // dtd html 4.01 Transitional // en http://www.w3.org/tr/html4/loose.dtd>
ج) يتم استخدام Frameset DTD للمستندات ذات الإطارات. باستثناء عنصر الإطارات الذي يحل محل عنصر الجسم ، تعادل FrameSet DTD DTD الانتقالي:
<! doctype html public -// w3c // dtd html 4.01 frameset // en http://www.w3.org/tr/html4/frameset.dtd>
ثلاثة أنواع من مستندات XML :يحدد XHTML 1.0 ثلاثة أنواع من مستندات XML: صارمة ، انتقالية ، وإطارات.
أ) إذا كنت بحاجة إلى ترميز نظيف لتجنب الالتباس في العرض التقديمي ، فاستخدم نوع DTD الصارم XHTML:
<! doctype html public -// w3c // dtd xhtml 1.0 Strict // en http://www.w3
ب) يمكن أن تحتوي DTD الانتقالية على سمات وعناصر عرض تتوقع W3C الانتقال إلى أوراق الأنماط. إذا كان المستخدم يستخدم متصفحًا لا يدعم أوراق نمط متتالية (CSS) بحيث يتعين عليك استخدام سمات تقديم HTML ، فاستخدم نوع DTD الانتقالي:
<! doctype html public -// w3c // dtd xhtml 1.0 transitional // en http://www.w3
ج) يتم استخدام Frameset DTD للمستندات ذات الإطارات. باستثناء عنصر الإطارات الذي يحل محل عنصر الجسم ، تعادل FrameSet DTD DTD الانتقالي:
<! doctype html public -// w3c // dtd xhtml 1.0 frameset // en http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd
حدد doctype الصحيح :من أجل الحصول على إعلان doctype الصحيح ، فإن المفتاح هو جعل DTD يتوافق مع المعايير التي تليها المستند.
على سبيل المثال ، على افتراض أن المستند يتبع معيار XHTML 1.0 الصارم ، يجب أن يشير إعلان Doctype للوثيقة إلى DTD المقابل.
من ناحية أخرى ، من غير المناسب إذا كان إعلان Doctype يحدد XHTML DTD ، لكن المستند يحتوي على علامات HTML القديمة ؛ وبالمثل ، من غير المناسب أيضًا أن يحدد إعلان Doctype HTML DTD ، لكن المستند يحتوي على علامات صارمة XHTML 1.0.
إذا لم يتم تحديد إعلان doctype صالح ، فسيستخدم معظم المتصفحات DTD افتراضي مدمج. في هذه الحالة ، سيستخدم المستعرض DTD المدمج لمحاولة عرض العلامات التي حددتها (ولكن هذا ما تفعله عند كتابة الصفحة بشكل سيء للغاية).
نظرت إلى jd.com و taobao و Park Park ، واستخدمت هذا (لقد استخدمت هذا دائمًا):
<! doctype html public -// w3c // dtd xhtml 1.0 transitional // en http://www.w3
ومع ذلك ، وجدت أن Baidu و Google تستخدم <! doctype html> ، لذلك قمت بفحص المعلومات بعناية ووجدت أن HTML5 تم استخدامها أيضًا مباشرة ، ولكن لأن HTML 5 لا يعتمد على SGML ، لذلك ليست هناك حاجة للقيام بـ DTD
المراجع ، ولكن هناك حاجة إلى Doctype لتنظيم سلوك المتصفح (دع المتصفحات تسير بالطريقة التي ينبغي لها).
يوصى باستخدام <! doctype html> مباشرة في المستقبل. إذا كنت تستخدم <! doctype html> ، سيتم تمكين وضع التوافق القياسي للمتصفح. في وضع التوافق القياسي ، لا يمكن ضمان أن تكون متوافقة مع الإصدارات الأخرى (قبل IE6 ، فقط تجاهلها). Internet Explorer. قد يكون سلوك تقديم المستند مختلفًا عن مستقبل Internet Explorer في المستقبل ، ولكن لا تتردد في استخدامه ~~
نصائح :XHTML 1 هو XMlization لـ HTML 4.01 ، وهو تنسيق غير متوافق إلى الأمام.
يتطلب Doctype في HTML 4.01 إشارات إلى DTD لأن HTML 4.01 يعتمد على SGML.
تحدد SGML تنسيقًا قياسيًا لتضمين علامات الوصف في المستندات ويحدد طريقة قياسية لوصف بنية المستند. يعد تنسيق HTML المستخدم حاليًا على الويب مستند SGML يستخدم مجموعة ثابتة من العلامات.