Boplo.ir
rss


جستجو

آخرین مطالب

 

 

مطالب همینجوری

 

 

بر و بچ

MyView Tween


دوستشون دارم


بیلبورد

دامین برای فروش: CleanCode.ir
FastFeed.ir
Fonvi.com

تماس


انواع و اقسام سفارشات طراحی و برنامه نویسی سایت پذیرفته میشه. از سایت حمایت از خرگوشهای صورتی گرفته تا سایت قاچاق اعضای بدن!
تماس

 

از بيماران سرطاني حمايت كنيم

A new begining
AHHP presents

 

CSS و سردرد ناشی از مرورگرهای مختلف
05 آبان 1388 ساعت 01:55

طراحی وب
ابزارهای طراحی بصورت Cross-Browser

وقتی میخوای CSS بنویسی حتما می دونی که کدهات توی مرورگرهای مختلف که هر روز دارند بیشتر می شن، متفاوت رندر میشه. مخصوصا اینترنت اکسپلورر که به زبون خودش حرف می زنه! واسه اینکه CSS به اصطلاح Cross-Browser داشته باشیم یعنی توی همه مرورگرها، خروجی ثابتی داشته باشه، دو راه وجود داره:

راه اول reset کردن مشخصه های صفحه است. علت اصلی اینکه مرورگرها، خروجی متفاوتی دارند اینه که هر کدوم یه سری مقادیر پیش فرض دارند که با مقادیر ما ادغام میشه. مثلا Opera بصورت پیش فرض یه فاصله کمی برای رکوردهای جدول تعیین می کنه ولی مثلا فایرفاکس نمی کنه یا یه جور دیگه مقدار میده و وقتی من میام دستی برای این فاصله ها مقدار تعیین می کنم، به مقدار پیش فرض اضافه میشه و تفاوتها ظاهر میشن.
کدهای Reset کدهایی هستند که میان همه این مقادیر پیش فرض که متفاوت هستند رو مقدار میدن و چون مقدار تعیین میشه، دیگه از پیش فرض خبری نیست و همه مشابه هم میشن. نمونه مثل این:

<style type="text/css">
	*, html, body {
		margin:0;
		padding:0;
	}
</style>
این کدها باید قبل از همه کدهای CSS فراخوانی بشن تا کدهای دیگه، تحت تاثیر اونا قرار بگیرن.
این کدها رو میشه از فریم ورک CSS گوگل با نام Blue Print گرفت. یا با سرچ پیدا کرد.
البته این روش به مشکل داره و اونم اینه با Reset کردن CSS، فقط پیش فرضها خنثی میشن و باگهای احتمالی (توی IE حتمی) اصلاح نمیشن. مثلا IE6 توی Float باگ داره و اشتباه عمل می کنه.

راه دوم استفاده از جاوااسکریپت هست. می دونی که با جاوااسکریپت میشه نوع و نسخه مرورگر رو تشخیص داد و بالطبع میشه براساس مرورگر، استایل رو اصلاح کرد. چند تا اسکریپت آماده برای این کار وجود داره که من اینجا بهترینش رو معرفی می کنم به نام

« CSS Browser Selector »

این اسکریپت واقعا عالیه. چرا؟ چون استفاده ازش یه جور خفنی گوگولی و ساده است! کافیه تا اسکریپت سه چهار خطی اش رو توی صفحه فراخوانی کنی. مثلا این شکلی:

<head>
	...
	<script type="text/javascript" src="js/css_browser_selector.js"></script>
	...
</head>
حالا جای باحالش شروع میشه و اون اینه که شما یه کلاس CSS با مشخصه مرورگر توی صفحه فعال داری که همه اجزا صفحه رو شامل میشه! مطمئنم سر در نیاوردی! مثال خود سایت رو ببینی متوجه میشی
<style type="text/css">
	.ie .example { background-color: yellow }
	.ie7 .example { background-color: orange }
	.gecko .example { background-color: gray }
	.win.gecko .example { background-color: red } /* Gecko in Windows */
	.linux.gecko .example { background-color: pink } /* Gecko in Linux */
	.opera .example { background-color: green }
	.ff3_5 .example { background-color: blue } /* Firefox 3.5 */
	.webkit .example { background-color: black }
</style>
یعنی وقتی IE7 داشت صفحه رو رندر میکرد، رنگ زمینه کلاس example. نارنجی خواهد بود یا توی Opera سبزه.
ذوق زده شدی! نکته خوبش اینکه تقریبا همه نسخه های مرورگرهای مختلف رو پشتیبانی می کنه یعنی فایرفاکس2، فایرفاکس3 و حتی فایرفاکس 3.5!

یه سری میگن ترفندهای جاوااسکریپ برای CSS غیراستاندارد هستند و موقعی که جاوااسکریپت غیرفعال باشه، کار نمی کنند.
با بخش اولش کاملا موافقم ولی بخش دومش رو نه. غیرفعال بودن جاوااسکریپت مال زمان دایناسورهای اینترنت بوده که مرورگرها جاوااسکریپت رو صحیح اجرا نمی کردند و کلی باگ و خطر امنیتی با جاواسکریپت همراه بود ولی الان دیگه از این خبرها نیست. کسی که جاوااسکریپت مرورگرش رو غیرفعال کنه، نصف اینترنت رو از دست میده. مگه اینکه هدف خاصی مثل هک و نفوذ داشته باشه که اون یارو اصلا فاکتور محسوب نمیشه! میخواست غیرفعال نکنه!

خلاصه ما اینو توصیه می کنیم! به سایتش برو، مثال و کاربرد و توضیحاتش رو ببین و داونلود کن!

 

تو چی فکر می کنی؟


طراحی سایت : خیلی مفید بود. این یکی از مشکلات همیشگی است که طراحان وب با اون سر و کله میزنن!
(6 ماه و 10 روز و 22 ساعت و 23 دقیقه پیش)

محمد : سلام امیر حسین کارت واقعاً حرف نداره!
من میخوام به طور جدی تو زمینه وب کار کنم و php رو انتخاب کردم. اگه میشه منو راهنمایی کن که چطوری و از کجا شروع کنم. مرسی... اگه ایمیل بدی خیلی ممنون میشم!
(1 ماه و 27 روز و 5 ساعت و 55 دقیقه پیش)
نام:
ایمیل: (منتشر نخواهد شد!)
وب سایت:

کد امنیتی: اگر در خواندن این کد مشکلی دارید، اینجا کلیک کنید تا صفحه بازخوانی شود.

 

me امیرحسینم. اسمم رو دوست دارم، خودم رو دوست دارم. تهران زندگی می کنم. دانشجوی رشته صنایع هستم شغل درست و حسابی ندارم. طراحی وب می کنم ولی همه اش واسه سرگرمی بوده. برنامه نویس PHP هستم. برنامه نویسی و وقت گذرونی با کامپیوتر تنها کاریه که خسته ام نمی کنه.
آدم خیلی سردی هستم، اینو دور و وری هام میگن. ولی به نظر خودم سرد نیستم در واقع گرمای خودم رو کم بروز می دم! آدما رو اغلب دوست دارم غیر از اون مواقعی که اونا من رو نادیده میگیرن!

این سایت رو بعد از کلی اینور اونور دوباره راه انداختم تا هرچی دوست دارم توش بنویسم، چه کسی بخونه چه نخونه.
خلاصه اینجا خونه منه،

به خونه امیرحسین خوش اومدی...

MODx | Template World