فیکس کردن قالب ها و css در مرورگر مایکروسافت IE یا همان Internet Explorer

به نام پرودگار یکتا

سلام یکی از چیز هایی که از لحظات اولی که پا توی عرصه وب گذاشتم اذیت کردن IE برای زدن یک قالب استاندارد بود، اگر شما تجربه کار با IE یعنی قالب زدن برای این مرورگر را داشته باشید، می بینید که در هر قالب کلی اذیت و نا هماهنگ به شما تحمیل می کند، گاهی از شدت حرص و جوش به مایکروسافت و به مصرف کنندگان این مرورگر فحش میدهید، و گاه از استاندارد کردن قالب برای IE یا برخی از ورژن های اون جلوگیری می کنید.

در این نوشته قصد داریم ابتدا بگیم چطور میشود ورژن های مختلف IE را همزمان تست کرد و سپس چطور میشود قالب های IE را استاندارد کرد.

1) برنامه ای وجود دارد به نام IE tester که کار این برنامه تست کردن قالب روی ورژن های مختلف IE هست تا قبل از این برنامه من هم نخسه های IE رو به صورت قابل حمل portable  داشتم و کلی اذیت میشدم اما نسخه حال حاضر این برنامه از IE 5 تا IE 10 رو ساپورت می کنه به این صورت که شما آدرس مورد نظر رو میدهید و نمایش آن در هر نسخه از IE رو میتونید، برآورد کنید یه اسکرین شات از این برنامه:

IETester_1

این برنامه در حدود 40 مگابایت قابل دانلود از این لینک می باشد.

2) یکی از روش های استانداردسازی برای قالب در برابر کنش های IE واکنش ساده ای است، تعریف style ها و CSS های خاص برای IE و ورژن های خاص آن است خب اکنون برایتان شاید سوال پیش بیاید چطور یه CSS فقط برای ورژن های IE استفاده کنیم.

خب میدانیم در HTML بلاک کامنت به شکل زیر است و توسط مرورگر کامپایل و یا رندر برای نمایش نمیشود:

خب اکنون در وب نمیدانم چه کسی برای این مشکل یه راه در نظر گرفته با استفاده از کامنت ما بتونیم برای IE کارها مختلفی کنیم که به ترتیب اهمیت و استفاده ذکر می کنیم.

نکته : ما در این جا از تگ لینک برای لینک شدن به یک css خارجی استفاده می کنیم شما میتوانید به جای آن style و یا حتی نوشته و یا عکس و یا یک کد جاوا اسکریپت بگذارید.

اگر مرورگر شما :

IE باشد:

هر بروزری به جز IE باشد:

IE 7 باشد:

IE 5 باشد:

IE 5.5 باشد:

IE 6 و نسخه های پایین تر از آن باشد:

یا این کد:

( این کد آخر با کلمات lt و lte کوچکتر و کوچکتر مساوی را نمایش میدهند برای تمام ورژن های میتوانید این کار را بکنید ما برای 8 هم مثال میز نیم تا روشن شود:

IE 8 یا نسخه های پایین تر باشد:

یا:

و برای بزرگتر و بزرگتر مساوی gt و gte را استفاده می کنند به مثال زیر برای IE6 توجه کنید:

IE 6 و نسخه های بالاتر:

یا:

اما به جز این موارد یه تعداد هک وجود دارد که شما میتوانید در هر css استفاده کنید ولی فقط توسط مروگر های خاص IE خوانده میشود به عنوان مثال ما height یه div با id به نام div را میخواهیم به 200 پیکسل تغییر دهیم به شیوه های زیر نگارش کنیم با نتایج آن:

فقط IE 6:

فقط IE7 :

فقط IE 8 :

فقط IE7 و IE8 

به جز IE7:

در IE6 و نسخه قدیمی تر نمایش داده نمیشود:

یا:

خب حالا با این دانسته با هم به جنگ IE برویم 😀 از دست این مرورگر

‌A1Gard

اول از همه کوچک ترین عضو مجموعه 4xmen بنده حقیر هستم. در ثانی یک توسعه دهنده هستم زمینه های تخصصی کارم :‌ Delphi, PHP, C++ ,Python, JavaScript, Unity game engine, C#, asm و علاقه مند به لینوکس، RCE ، کریپتوگرافی هستم. تا الان حضرت حق اینا رو به ما داده و هر وقت که بخواد ازمون میگیره دست خودشه. یا حق، با حق، تا حق

More Posts

4 thoughts on “فیکس کردن قالب ها و css در مرورگر مایکروسافت IE یا همان Internet Explorer”

  1. به نظرم کلا بیخیال ورژن های پایین IE. مثه اینه الان بیای واسه سازگاری برنامه ها رو ویندوزهای پایین تر از XP وقت بزاری 🙂

  2. jquery2 هم مثل اینکه قرار پشتیبانی از ie زیر 9 رو برداره که این کار حجم فایلهاشو به نصف و حتی کمتر کاهش میده

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *