باستخدام عنصر DOCTYPE في وضع Quirks

ترك خارج Doctype لوضع المتصفحات في وضع Quirks

إذا كنت تصمم صفحات الويب لأكثر من بضعة أشهر ، فأنت على الأرجح على دراية بصعوبة كتابة صفحة تبدو متشابهة في جميع المتصفحات . في الواقع ، هذا مستحيل. تمت كتابة العديد من المتصفحات بميزات خاصة يمكن فقط التعامل معها. أو لديهم طرق خاصة للتعامل مع الأشياء التي تختلف عن كيفية معالجة المتصفحات الأخرى لهم. فمثلا:

تكمن المشكلة بالنسبة لمطوري البرامج في أن عليهم إنشاء متصفحات ويب متوافقة مع صفحات الويب المصممة للمتصفحات القديمة. من أجل التعامل مع هذه المشكلة ، قام صانعو المتصفح بإنشاء أوضاع للمتصفحات للعمل فيها. يتم تعريف هذه الأوضاع من خلال وجود أو عدم وجود عنصر DOCTYPE وما يستدعيه DOCTYPE.

DOCTYPE التبديل و "وضع المراوغات"

إذا وضعت DOCTYPE التالي في صفحتك على الويب:

المتصفحات الحديثة (Android 1+ و Chrome 1+ و IE 6+ و iOS 1+ و Firefox 1+ و Netscape 6+ و Opera 6+ و Safari 1+) تفسر ذلك على النحو التالي:

  1. لأن هناك DOCTYPE مكتوبة بشكل صحيح ، وهذا يؤدي إلى تشغيل وضع المعايير.
  2. انها HTML 4.01 الوثيقة الانتقالية
  3. نظرًا لأنه في وضع المقاييس ، ستجعل معظم المتصفحات المحتوى المتوافق (أو المتوافق في الغالب) مع HTML 4.01 Transitional

وإذا وضعت هذا DOCTYPE في مستندك:

يخبر هذا المتصفحات الحديثة أنك تريد عرض صفحة HTML 4.01 الخاصة بك في توافق تام مع DTD.

ستدخل هذه المتصفحات في وضع "صارم" أو "مقاييس" وتجعل الصفحة متوافقة مع المعايير. (لذلك ، بالنسبة لهذا المستند ، قد يتم تجاهل العلامات تمامًا مثل المتصفّح ، حيث تم إيقاف عنصر FONT في HTML 4.01 Strict.)

إذا تركت DOCTYPE خارجًا تمامًا ، فسيتم تشغيل المتصفحات تلقائيًا في وضع "المراوغات".

يوضح الجدول أدناه ما تفعله المتصفحات الشائعة عند تقديمها مع إعلانات DOCTYPE الشائعة المختلفة.

مايكروسوفت يجعل من الصعب

يحتوي Internet Explorer 6 أيضًا على ميزة أنه إذا وضعت أي شيء على الإطلاق فوق تعريف DOCTYPE ، فسيتم الانتقال إلى وضع المراوغة. لذلك ، كل من هذه الأمثلة سيضع IE 6 في وضع quirks ، على الرغم من أن تصريحات DOCTYPE تقول في وضع المعايير الصارمة:

و XHTML 1.1 DOCTYPE:

بالإضافة إلى ذلك ، إذا تخطيت IE6 ، فستكون لديك "الميزة" التي أضافتها Microsoft في IE8 و IE9: تحويل عنصر META والقائمة السوداء للموقع الإلكتروني. في الحقيقة ، هذان الإصداران من المستعرضات يحتويان الآن على سبعة أوضاع (!) مختلفة:

قدم IE 8 أيضًا "وضع التوافق" حيث يمكن للمستخدم اختيار تغيير نموذج العرض إلى وضع IE 7. لذلك حتى إذا قمت بتعيين الوضع الذي تريد تعيينه باستخدام كل من DOCTYPE و META ، فستستمر إعادة الصفحة إلى وضع أقل توافقًا مع المعايير.

ما هو وضع Quirks؟

تم إنشاء وضع Quirks للمساعدة في التعامل مع كل دعم المستعرض الغريب وغير المتوافق مع الاختراقات التي يستخدمها مصممو الويب للتعامل مع هذه الأشياء. كان المخاوف من الشركات المصنعة للمتصفح هو أنه إذا حولت متصفحاتهم إلى التوافق الكامل للمواصفات ، فسيتم ترك مصممي الويب متخلفين.

من خلال إعداد تبديل DOCTYPE و "وضع Quirks" ، يسمح مصممو الويب المسموح لهم باختيار الطريقة التي يريدون من المتصفحات تقديم HTML الخاص بهم.

تأثيرات وضع المراوغة

هناك العديد من التأثيرات التي تستخدمها معظم المتصفحات في وضع Quirks:

هناك أيضًا اختلاف في "وضع المعايير تقريبًا:"

كيف تختار دوكتيبي

أذهب إلى مزيد من التفاصيل في مقالتي DOCTYPE List ، ولكن إليك بعض القواعد العامة للإبهام:

  1. دائما اختيار وضع المعايير أولا. والمعيار الحالي الذي يجب أن تستخدمه هو HTML5:
    ما لم يكن لديك سبب محدد لتجنب استخدام HTML5 DOCTYPE ، فهذا هو ما يجب أن تستخدمه.
  2. انتقل إلى HTML 4.01 صارم إذا كنت بحاجة إلى التحقق من العناصر القديمة أو تريد تجنب الميزات الجديدة لسبب ما:
  3. إذا قمت بتقطيع الصور في جدول ولا تريد إصلاحها ، فانتقل إلى Transitional HTML 4.01:
  4. لا تكتب الصفحات عمدا في وضع المراوغة. استخدم دومًا DOCTYPE. سيوفر لك ذلك في وقت التطوير في المستقبل ، وليس له أي فائدة. يفقد المتصفح IE6 شعبية بشكل سريع ، ومن خلال تصميمه على هذا المتصفح (الذي هو أساسًا التصميم في وضع المراوغة) فإنك تقيد نفسك وقرائك وصفحاتك. إذا كنت يجب أن تكتب لـ IE 6 أو 7 ، فاستخدم التعليقات الشرطية لدعمها ، بدلاً من إجبار المتصفحات الحديثة على الوصول إلى وضع المراوغة.

لماذا استخدام DOCTYPE

بمجرد معرفة هذا النوع من تبديل DOCTYPE ، يمكنك التأثير بشكل مباشر على صفحات الويب الخاصة بك باستخدام DOCTYPE الذي يشير إلى ما يمكن أن يتوقعه المستعرض من صفحتك. أيضًا ، بمجرد البدء في استخدام DOCTYPE ، ستكتب HTML الذي يكون أقرب إلى أن يكون صالحًا (يجب عليك التحقق من صحته). وعن طريق كتابة XHTML صالح ، فإنك تشجع صانعي المتصفح على بناء متصفحات متوافقة مع المعايير.

إصدارات المتصفح ووضع Quirks

DOCTYPE ذكري المظهر
كروم
ثعلب النار
IE 8+
دائرة الرقابة الداخلية
Opera 7.5+
رحلات السفاري
IE 6
IE 7
أوبرا 7
نتسكيب 6
لا شيء وضع المراوغات وضع المراوغات وضع المراوغات
HTML 3.2
وضع المراوغات وضع المراوغات وضع المراوغات
HTML 4.01
انتقالي وضع المعايير * وضع المعايير * وضع المعايير
انتقالي وضع المراوغات وضع المراوغات وضع المراوغات
صارم وضع المعايير وضع المعايير * وضع المعايير
صارم وضع المعايير وضع المعايير * وضع المعايير
HTML5
وضع المعايير وضع المعايير * وضع المراوغات
* مع هذا DOCTYPE ، تكون المتصفحات قريبة من المعايير المتوافقة ، ولكن لديها بعض المشاكل - تأكد من اختبارها. يُعرف أيضًا باسم "وضع المعايير تقريبًا".