وضع المراوغات

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

تصوير رسومي لوثيقة html بسيطة للغاية.

نظرة عامة عدل

تُوصف بنية صفحة الويب ومظهرها بمزيج من لغتين قياسيتين: HTML، لغة ترميزية مصممة للاستخدام على الويب، تصف بنية الصفحة ومحتواها؛ وCSS، لغة أنماط عامة، تحدد كيفية عرض الصفحة في وسائط مختلفة (الأنماط المرئية لعرض الشاشة، وأنماط الطباعة لاستخدامها عند طباعة الصفحة، والأنماط السمعية التي تُستخدم عند قراءة الصفحة بصوت عالٍ بواسطة قارئ الشاشة، إلخ..). ومع ذلك، فإن معظم متصفحات الويب الأقدم إما لم تنفذ المواصفات الكاملة لهذه اللغات أو جرى تطويرها قبل الانتهاء من المواصفات (Microsoft Internet Explorer الإصدار 5.0 لمنصة Macintosh، الذي أُصدر في عام 2000، كان أول متصفح ويب رئيسي مع دعم كامل لـ CSS المستوى 1، على سبيل المثال.[3] نتيجة لذلك، أُنشأت العديد من صفحات الويب القديمة للاعتماد على عمليات التنفيذ غير المكتملة أو غير الصحيحة للمتصفحات القديمة، ولن يتم عرضها إلا على النحو المنشود عند التعامل معها بواسطة هذا المتصفح. زاد دعم HTML وCSS المعياري في متصفحات الويب الرئيسية بشكل كبير، لكن المجموعة الكبيرة من المستندات القديمة التي تعتمد على المراوغات الخاصة بالمتصفحات القديمة تمثل عقبة أمام مطوري المستعرضات، الذين يرغبون في تحسين دعمهم لـ HTML وCSS القياسيين، ولكن أيضًا ترغب في الحفاظ على التوافق مع الإصدارات الأقدم للصفحات غير المعيارية. بالإضافة إلى ذلك، يستمر إنشاء العديد من صفحات الويب الجديدة بالطريقة الأقدم، نظرًا لأن حلول التوافق التي قدمها مطورو المتصفح تعني أن فهم الأساليب الموحدة ليس ضروريًا تمامًا. للحفاظ على التوافق مع أكبر عدد ممكن من صفحات الويب، يتم تطوير متصفحات الويب الحديثة بشكل عام بأوضاع عرض متعددة: في «الوضع القياسي» يتم تقديم الصفحات وفقًا لمواصفات HTML وCSS، بينما في «وضع المراوغات» يتم إجراء محاولات لمحاكاة سلوك المتصفحات القديمة. تستخدم بعض المتصفحات (تلك التي تعتمد على محرك عرض Gecko من Mozilla، أو Internet Explorer 8 في الوضع الصارم، على سبيل المثال) أيضًا وضع «شبه قياسي» الذي يحاول التنازل بين الاثنين، وتنفيذ المراوغة الواحدة لحجم خلية الجدول بينما تتوافق بطريقة أخرى مع المواصفات.[4]

مراجع عدل

  1. ^ أ ب وصلة مرجع: https://api.github.com/repos/whatwg/quirks. الوصول: 17 ديسمبر 2018.
  2. ^ وصلة مرجع: https://api.github.com/repos/whatwg/quirks. الوصول: 6 مارس 2019.
  3. ^ "رابطة الشبكة العالمية". مؤرشف من الأصل في 2020-10-10.
  4. ^ "Activating Browser Modes with Doctype". hsivonen.fi. مؤرشف من الأصل في 2020-09-19. اطلع عليه بتاريخ 2020-10-16.