لا توجد العديد من المقالات التي تتناول حالات عدم التوافق ، أو اختلافات CSS في Firefox وحده - ولسبب وجيه.

لقد عمل فايرفوكس دائمًا بعمل ممتاز في دعم كل من CSS وجافا سكريبت بطريقة متوافقة مع المعايير دون الكثير من الأخطاء البالية.

ومع ذلك ، هناك بعض الخصائص والمتخصصات في CSS التي لا يتم دعمها بواسطة واحد أو أكثر من الإصدارات التي تم إصدارها منذ الإصدار 3.0 ، والتي سأغطيها هنا.

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

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

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

تجاوز المخطوطة تجاوز

في الإصدار 3.x من Firefox ، عندما يتجاوز عنصر حدود أحد الأبوين الأم outline تعيين الخاصية ، سيتم توسيع المخطط لتلائم عنصر يحتوي على ، كما هو موضح في التقاط الشاشة أدناه:

يظهر التنفيذ الصحيح في التقاط الشاشة التالي الذي تم التقاطه من Chrome:

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

مرجع: SitePoint CSS Reference: مخطط تفصيلي الخاصية

    الجداول ذات الحدود المقلدة

    في Firefox ، عندما يكون للجدول حدوده collapse باستخدام border-collapse الخاصية ، أعلى هوامش الجدول واليسار الأيسر بالنسبة إلى العناصر المجاورة 1 بكسل. يظهر هذا في لقطة شاشة مكبرة في الصورة أدناه ، والتي تعرض الحد السفلي لعنصر مستوى الكتلة (أحمر) لمس الحد العلوي لجدول مطوي (أزرق):

    في ما يلي التنفيذ الصحيح لزوج الخاصية / القيمة هذا ، كما هو موضح في Chrome:

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

    مرجع: SitePoint CSS Reference: border-collapse Property

      خلايا فارغة في صفوف الجدول

      هذه قيمة خاصية لا يتم تنفيذها بشكل صحيح من قبل أي متصفح ، بما في ذلك Firefox. عندما لا يحتوي صف الجدول على محتوى مرئي وكل الخلايا الخاصة به empty-cells تم تعيين الخاصية على hide ، يجب أن يتصرف الصف بأكمله كما لو تم تعيينه على "display: none" ، بدون حدود أو خلفيات مرئية.

      لا يعالج المتصفح هذا بشكل صحيح ، لذلك لا يزال صف الجدول مرئيًا ، كما هو موضح في الصورة أدناه.

      مرجع: SitePoint CSS Reference: خصائص الخلايا الفارغة

        تباعد الكلمات على العناصر المضمنة

        في Firefox 3.x ، قيمة سالبة على word-spacing سيتم التعامل مع الخاصية صفر على العناصر المضمنة المجاورة. يجب أن تتسبب القيمة السالبة في تداخل العناصر المضمنة مع بعضها البعض ، كما هو الحال مع النص ، ولكن هذا لا يحدث. بدلاً من ذلك ، يتم إعطاء العناصر صفر فصل المسافة البيضاء بدون تراكب.

        تعرض الصورة أدناه كل من التطبيقات الصحيحة وغير الصحيحة:

        في الأمثلة الموضحة أعلاه ، يتم تغليف الكلمات الثلاث "Fruits" و "Vegetables" و "Other Foods" بشكل فردي في العناصر ، في حين أن الفقرة التي يلتف عليها لديها word-spacing تم تعيين الخاصية إلى قيمة سالبة.

        المثال الثاني (Firefox) يفشل في تطبيق المسافات بين الكلمات السالبة ، باستثناء ما بين الكلمتين الأخيرتين لأن هذه الكلمات لا يتم تغليفها بشكل فردي بواسطة امتدادات ولكنها عناصر نصية طبيعية.

        كنقطة جانبية ، يحدث هذا الخطأ بشكل مشابه في IE8 ، ولكن ليس في الإصدارات السابقة من IE.

        مرجع: SitePoint CSS Reference: خاصية تباعد الكلمات

          زخرفة النص على أحفاد العائمة

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

          في الصورة أعلاه ، السطر الأول عبارة عن لقطة شاشة من IE8 ، يعرض عنصر طرحت داخل مرساة. النص داخل ليس لديه زخرفة نص واضحة ، وهي الطريقة الصحيحة لعرضه. في Firefox (كما هو موضح في المثال الثاني) ، يتم تطبيق زخرفة النص بشكل غير صحيح على الطفو .

          قد تكون لاحظت هذا الخطأ في Firefox عند محاولة إزالة زخرفة النص من الصور العائمة داخل المراسي.

          مرجع: SitePoint CSS Reference: خاصية زخرفة النص

            ما قبل الخط والتلف المسبق لملكية الفضاء الأبيض في FF 3.0

            باستخدام white-space الخاصية في فايرفوكس 3.5 ، يمكنك تحديد ما إذا كان يجب تصغير أحرف المسافات المتعددة إلى مسافة واحدة أم لا. بشكل افتراضي ، ستنهار مستندات HTML بمسافات متعددة لأسفل إلى مسافة واحدة. في بعض الحالات ، يمكنك التقدم بطلب white-space: pre لمنع المساحة البيضاء من الانهيار ، وهو ما يشبه استخدام

              علامة HTML.  في وقت لاحق ، قد ترغب في إزالة هذا الإعداد باستخدام white-space:  pre-line  (لطي الفضاء الأبيض). 

            لا يدعم Firefox 3.0 هذه القيمة ، لذا سيتم الاحتفاظ بالمساحة البيضاء. فايرفوكس 3.5 ينهار الفضاء بشكل صحيح. توضح الصورة أدناه كلا المثالين:

            وبالمثل ، عند تعيين فقرة نص white-space: pre-wrap يجب أن يحافظ هذا على المسافات البيضاء بين الكلمات ، ولكن يجب أن يتضمن فواصل الأسطر بشكل طبيعي. فشل فايرفوكس 3.0 في تنفيذ ذلك بشكل صحيح ، بينما تتضمن الإصدارات الأحدث (وجميع المتصفحات الأخرى) فواصل الأسطر الطبيعية. يتم عرض كلا المثالين أدناه.

            ضع في اعتبارك أنه يتم إعطاء العنصر الخارجي white-space: pre بينما الداخلية يحاول تجاوز عدم استخدام فواصل الأسطر pre-wrap . من تلقاء نفسها، pre-wrap لن يكون لها أي تأثير.

            فايرفوكس 3.x يعامل أيضا بعض من white-space القيم بشكل مختلف عن المتصفحات الأخرى عند تطبيق تلك القيم على