برچسب ها

موضوع ها

اطلاعات بیشتر
پریانا تبلیغات در عصرونه

ساخت منوی عمودی بوسیله CSS (۷)

یکی از مهمترین قسمت های یک سایت ( و وبلاگ ) ستون کناری اون هست. در این مطلب قصد داریم آموزش کوتاهی داشته باشیم در رابطه با یکی ۲ تا ترفند در رابطه با طراحی این ستون با استفاده از زبان CSS.

من برای نوشتن این مطلب از کارهای این آقا استفاده کردم پس می تونید به این آدرس برید و نمونه کارها دیدن کنید.
مزیت کار در این هست که هر گزینه یک تصویر داره و وقتی نشانگر موس روی گزینه مورد نظر می ره تصویر دیگری به نمایش در می یاد.

ارزش کار زمانی مشخص می شه که کد استفاده شده بسیار تمیز و کوتاه باشه و از جاوا اسکریپت هم استفاده نشده باشه و از همه جالبتر توی اینترنت اکسپلورر ۶ هم بدون مشکل به نمایش در بیاد.

مسلما راه های مختلفی برای انجام این کار وجود داره ولی این راه می تونه یکی از بهترین گزینه ها باشه. پس با ما باشید در مورد آنالیز کد ها …

تمام کد های بکار رفته در منوهایی که در این صفحه مشاهده می کنید تقریبا به یک صورت می باشد. ما برای آنالیز کد Tab Menu 2 رو انتخاب کردیم.

منوی ما در داخل یک تگ div با شناسه menu2 قرار گرفته. در ابتدا ما یک استایل کلی به این تگ می دهیم. استایل داده شده مشابه زیر می باشد:

#menu2 {
border: 1px solid #D8D5D1;
width: 200px;
}

در خط اول ما یک خط به دور منوی مورد نظرمون کشیدیم با رنگی که به تصویر به کار رفته بخوره. در خط دوم نیز پهنای مشخص ۲۰۰ پیکسل رو تعیین کردیم. توجه داشته باشید که پهنای داده شده در این قسمت باید هم اندازه با تصویر بکار رفته در این طرح باشه.
همچنین برای فاصله از اطراف هم می تونید از دستور margin استفاده کنید.

حالا به قسمت بعد می رویم. این منو نیز همانند دیگر منو ها در بین تگ های ul قرار گرفته. در اینجا ما باید یک استایل کلی به این تگ بدیم:

ul {
list-style-type:none;
margin:0;
padding:0;
}

در حقیقت ۳ خط کد استفاده شده در قسمت بالا پیش فرض مرورگرها رو صفر و از بین می بره. برای از بین نخوردن طرح باید این دستورات اجرا بشه. با این کد دستورات نوشته شده به تمام تگ های ul اعمال می شه. اگه شما اینو دوست ندارید می تونید به جای استفاده از ul برای استایل دادن از عبارت div#menu2 ul استفاده کنید که دستورات به کار رفته فقط برای این قسمت اعمال بشه.

طبق اصول کار گزینه ها باید بین تگ li قرار بگیرند. نیازی با دادن استایل برای li نیست پس یک مرحله داخل تر می رویم. جایی که لینک ها مشخص می شه. اصلی ترین قسمت کار همین قسمت یعنی استایل دادن به تگ a هست.
در این قسمت ما باید ۳ استایل به این تگ بدیم. استایل اول به خود تگ a:

#menu2 li a {
height: 32px;
voice-family: "\"}\"";
voice-family: inherit;
height: 24px;
text-decoration: none;
}

3 خط اول مربوط به یک هک در CSS برای رفع مشکل مرورگر اینترنت اکسپلورر نسخه ۵٫۵ هست.
در خط چهارم ما یک ارتفاع ۲۴ پیکسلی دادیم. در مورد اینکه چرا این ارتفاع انتخاب شده در ادامه توضیح می دهیم. در خط آخر نیز ما تعیین کردیم که لینک ها در این قسمت خط زیرشون حذف بشه.
در ادامه ما به تگ a در زمانی که بصورت لینک است و زمانی که اون لینک بصورت بازدید شده است استایل می دهیم:

#menu2 li a:link, #menu2 li a:visited {
color: #3688BA;
display: block;
background: url(menu2.gif);
padding: 8px 0 0 30px;
}

در خط اول ما به لینک ها رنگ مورد نظر رو دادیم. در خط بعدی با دستور display: block تگ a موجود در این قسمت رو از حالت inline به block تغییر می دهیم. با استفاده از این کار عمل لینک به کل قسمت اعمال می شه.
در خط بعدی ما یک تصویر رو برای پشت زمینه این قسمت قرار دادیم. تصویر ما ۲۰۰ پیکسل عرض و ۶۴ پیکسل طول داره.
در آخرین خط نیز ما با دستور padding ما ۸ پیکسل از بالا به ارتقاع تگ a اضافه کردیم.
اگر توجه داشته باشید ما در قسمت قبل نیز یک ارتفاع ۲۴ پیکسلی داده بودیم که با این ۸ پیکسل مجموعا ۳۲ پیکسل می شه.
بدین صورت و دادن ارتفاع مشخص تنها ۳۲ پیکسل اول تصویر به نمایش در میاد و این یعنی ما دقیقا نصفه اول تصویر رو می بینیم.

در آخرین مرحله هم باید یک استایل دیگه به تگ a زمانی که نشانگر موس روش می ره تعریف بشه:

#menu2 li a:hover {
color: #3688BA;
background: url(menu2.gif) 0 -32px;
padding: 8px 0 0 32px;
}

خط اول و سوم تقریبا کارشون رو توضیح دادیم در قسمت قبل. تنها تغییر مهم در این قسمت خط دوم هست. ما مثل قسمت قبل همون تصویر رو به عنوان پس زمینه به این قسمت دادیم و تنها با اضافه کردن عبارت ۰ -۳۲ طوری نمایش تصویر رو تنظیم کردیم که از ارتفاع -۳۲ پیکسلی به نمایش دربیاد و این یعنی نمایش قسمت دوم تصویر.

همانطور که ملاحظه کردید نحوه کار بسیار ساده و راحت هست.
این یکی از ترفند های بسیار جالب CSS هست که در قسمت های دیگه هم می شه ازش استفاده های جالبی کرد.
× توجه داشته باشید که نسخه ۶ اینترنت اکسپلورر دستور :hover را فقط به تگ a قبول می کنه.
× در کل این دستور بعضی مواقع با اینترنت اکسپلورر ۶ با مشکل مواجه می شه بنابراین حتما بعد از انجام این مراحل حتما کارتون رو در این مرورگر تست کنید.

اطلاعات
تاریخ ارسال: ۱۷ آبان ۱۳۸۶
موضوع: طراحی وب
برچسب ها: , , ,
نویسنده: نوید کاشانی

شفافیت در CSS (۱)

شاید یکی از جذابترین دستورات CSS در طراحی سایت درصد شفاف بودن یک قسمت هست.

شما برای شفاف کردن یک قسمت می تونید از کد زیر استفاده کنید:

.transparent_class {

 filter:alpha(opacity=50);

 -moz-opacity:0.5;

 -khtml-opacity: 0.5;

 opacity: 0.5;

}

توضیح کد بالا:
- دستور opacity :
این دستور مهمترین دستور بین کدهای بالا هست. این دستور بین در مرورگرهای جدید و استاندارد نظیر فایرفاکس – اپرا – سافاری بدون مشکل کار می کنه.
- دستور filter : این دستور مختص مرورگر اینترنت اکسپلورر هست که متاسفانه هنوز از استاندارد ها پشتیبانی نمی کنه و استاندارد های خاص خودش رو داره.
- دستور -moz-opacity : این دستور برای مرورگرهای قدیمی موزیلا که از دستور اول پشتیبانی نمی کنند استفاده می شه.
- دستور -khtml-opacity : این دستور نیز برای مرورگرهایی که از موتور پردازشی وب کیت ( نسخه های قدیمی ) استفاده می کردند استفاده می شه نظیر نسخه های قدیمی سافاری.

× مثال بالا کلاس transparent_class را ۵۰% شفاف می کند.
× با توجه به اینکه کاربران گروه سوم و چهارم بسیار کم هستند بنابراین شما می تونید از این دستورات صرف نظر کرده و در کدهای خود از ۲ دستور اول استفاده کنید.
× ترتیب دستورات مهمه.

سوال: من از کد زیر برای شفاف کردن عکس هام وقتی نشانگر موس روشون می ره استفاده کردم ولی در اینترنت اکسپلورر با مشکل مواجه می شم:

a img:hover {
filter:alpha(opacity=50);
-moz-opacity:0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
}

جواب: متاسفانه در اینترنت اکسپلورر نسخه ۶ دستور hover تنها برای لینک ها کار می کنه بنابراین کد مورد نظر در این مرورگر مشکل خواهد داشت ( مشکلی در نسخه ۷ اینترنت اکسپلورر نمی باشد ).
راه حل: شما می تونید به لینک های مورد نظرتون یک کلاس بدید بعد با توجه به اون کلاس و تگ لینک این دستور را اجرا کنید :

a.transeffect:hover {
filter:alpha(opacity=50);
-moz-opacity:0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
}

منبع: CSS Tricks

اطلاعات
تاریخ ارسال: ۱۶ آبان ۱۳۸۶
موضوع: طراحی وب
برچسب ها: , ,
نویسنده: نوید کاشانی

موتور پردازشی مرورگرها (۱)

هر مرورگر دارای یک موتور پردازشگر هست که کارش پردازش اطلاعاتی نظیر CSS – HTML و … و نمایش آنها است. مشکل درست نشون دادن و ندادن و متغییر بودن نمایش صفحات در مرورگرهای مختلف از همین قسمت می آید. با توجه به این نکته یک طراح وب باید آشنایی با این موتورهای پردازشگر داشته باشه.

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

Trident: موتور استفاده شده در مرورگر اینترنت اکسپلورر که پراستفاده ترین در بین کاربران است. این موتور توسط مایکروسافت ساخته و توسعه داده می شود ( می شود؟ ).
Trident نسخه ۴ در اینترنت اکسپلورر ۶ و نسخه ۵ در نسخه ۷ اینترنت اکسپلورر مورد استفاده قرار گرفته.
آمار استفاده در دنیا:
- نسخه ۳ ( استفاده شده در نسخه ۵٫۵ اینترنت اکسپلورر ): حدود ۱٫۵%
- نسخه ۴: حدود ۳۵%
- نسخه ۵: حدود ۲۰%
آمار استفاده در ایران:
- نسخه ۳: حدود ۰%
- نسخه ۴: حدود ۵۰%
- نسخه ۵: حدود ۱۶%

× پشتیبانی از استاندارد ها: بسیار ضعیف
- نسخه ۴ :
HTML / XHTML > حدود ۷۳%
CSS 2.1 > حدود ۵۱%
CSS 3 > حدود ۱۰%
DOM > حدود ۵۰%
- نسخه ۵ :
HTML / XHTML > حدود ۷۳%
CSS 2.1 > حدود ۵۶%
CSS 3 > حدود ۱۳%
DOM > حدود ۵۱%

موتور پردازشی Trident علاوه بر اینترنت اکسپلورر در دیگر محصولات مایکروسافت نظیر اوت لوک و مدیاپلیر نیز استفاده می شود.
از دیگر مرورگرهایی که از این موتور پردازشی استفاده می کنن می شه به Avant ، Maxthon ، نت اسکیپ اشاره کرد.
از برنامه هایی که از این موتور استفاده می کنند می شه به بیشتر فید خوان های تحت ویندوز ، winamp و Real Player اشاره کرد.

Gecko: این موتور پردازشگر توسط موزیلا ساخته و گسترش داده می شود. از نظر کاربران رتبه دوم رو در اختیار داره و در مرورگرهایی مثل فایرفاکس ، نت اسکیپ ، Flock و … استفاده می شود.
نسخه ۱٫۸ آن در مرورگر هایی که هم اکنون موجود هستند مورد استفاده قرار گرفته و نسخه ۱٫۹ آن در مرورگرهای بتا نظیر فایرفاکس ۳ در حال استفاده و گسترش است.
آمار استفاده در دنیا:
- حدود ۳۷%
آمار استفاده در ایران:
- حدود ۳۰%

× پشتیبانی از استاندارد ها: بسیار عالی
- نسخه ۱٫۸ :
HTML / XHTML > حدود ۹۰%
CSS 2.1 > حدود ۹۲%
CSS 3 > حدود ۲۴%
DOM > حدود ۷۹%

معروفترین مرورگرهایی که از این موتور استفاده می کنند عبارتند از: فایرفاکس – موزیلا – نت اسکیپ – مکستون – Camino – SeaMonkey
از برنامه هایی که از این موتور پردازشی استفاده می کنند می شه به محصولات موزیلا از جمله تاندربیرد اشاره کرد و بعضی از فید ریدر ها در ویندوز و لینوکس.

Presto: موتور پردازشی مرورگر اپرا که تنها در این مرورگر مورد استفاده قرار می گیره و توسط سازندگان آن گسترش پیدا می کنه.
آمار استفاده در دنیا:
- حدود ۱٫۵%
آمار استفاده در ایران:
- حدود ۵%

× پشتیبانی از استاندارد ها: بسیار عالی
- نسخه استفاده شده در اپرا ۹ :
HTML / XHTML > حدود ۸۵%
CSS 2.1 > حدود ۹۴%
CSS 3 > حدود ۱۹%
DOM > حدود ۸۴%

از برنامه هایی که از این موتور پردازشی استفاده می کنند می توان به مرورگرهای نینتندو Wii ، نوکیا ۷۷۰ اشاره کرد.

WebKit: موتور پردازشی مرورگر سافاری شرکت اپل.
آمار استفاده در دنیا:
- حدود ۱٫۶%
آمار استفاده در ایران:
- حدود ۰%
× پشتیبانی از استاندارد ها: در حد مطلوب و خوب

از معروفترین مرورگرهایی که از این موتور استفاده می کنند می شه به سافاری ، شیرا ، Konqueror و Konqueror اشاره کرد.

× موتور های Gecko و WebKit اپن سورس هستند.
× مرورگرهای مکستون و نت اسکیپ ۲ موتور پردازشی Trident و Gecko را درون خود دارند.
× مرورگر Epiphany از موتور های Gecko و WebKit استفاده می کند.

منابع: ویکی پدیاFarhadi’s Blogw3schools

اطلاعات
تاریخ ارسال: ۱۵ آبان ۱۳۸۶
موضوع: طراحی وب، وب
برچسب ها: , , , , , , , , , , ,
نویسنده: نوید کاشانی