كيفية الحصول على "الموقف: ثابت" المغلق للعمل في IE 7+ مع DOCTYPE الانتقالية؟
-
06-07-2019 - |
سؤال
وأنا أعلم أن كان position:fixed;
غير معتمدة من قبل IE حتى IE 7، وأنها لا تعمل إلا في IE 7 إذا كان لديك STRICT DOCTYPE
.
وسؤالي هو: "كيف يمكنني الحصول عليه العمل مع IE 7 مع TRANSITIONAL DOCTYPE
"
تجدر لا أقترح تغيير DOCTYPE
، وهذا لا يجيب على سؤالي، شكرا لك.
المحلول
وأنت لا تحتاج إلى DOCTYPE الصارم لدعم fixed
. ما عليك سوى DOCTYPE الذي يقوم بتشغيل معايير وضع (أو المعايير تقريبا). يمكن أن يكون نوع مستند الانتقالي مثل:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
وأو XHTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
وطالما أن ID النظام (URI في النهاية) يتم تضمين.
إذا صفحاتك حقا <م> هي م> الاعتماد على الوضع المراوغات (هتاف اشمئزاز!)، أنا آسف ولكن لا يمكنك استخدام fixed
وسوف تضطر الى اللجوء الى الخارقة جافا سكريبت (ولكن بعد ذلك قد تحتاج تلك IE6 على أي حال).
نصائح أخرى
وموقف ثابت لا يعمل بالنسبة لي حتى مع الانتقالية / أنواع الوثيقة صارمة. ومع ذلك أستخدمه IE9 في وضع التوافق والتي يفترض أن تجعل باستخدام مكتبات وقت التشغيل IE8. لإصلاح هذه المشكلة كان لي لإضافة CSS التالية إلى عنصر.
.elementToBeFixed {
position: fixed;
top: 0;
left: 0;
}
وأنها لا تعمل مع الأعلى أو اليسار يجري في عداد المفقودين لديك لتعيين بشكل صريح إلى صفر (أو قيمة المطلوب) من أجل أن تعمل في كافة إصدارات IE .... وغني عن القول IE تمتص.