مدیا کوئری‌ها

26 فروردین

استفاده از مدیا کوئری‌ها (Media Query) در واقع روشی است که بتوانیم برای دستگاه‌های مختلف که ویژگی‌های متفاوتی دارند استایل‌های CSS متفاوتی را تعریف کنیم. این ایده اولین بار در CSS نسخه‌ی 2 تحت عنوان دستورهای media@ معرفی شد اما اقبال چندانی نیافت. در نسخه‌ی سوم CSS این امکان به شکل کوئری‌های مدیا درآمد که به جای بررسی نوع دستگاه، قابلیت‌های هر دستگاه را بررسی می‌کند.

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

نحوه استفاده از مدیا کوئری

ساختار کلی یک مدیا کوئری به شکل زیر است:

@media not|only mediatype and (expressions) {
  CSS-Code;
}

در واقع مجموع دستورهای CSS را با این ساختار گروه‌بندی می‌کنیم و هرکدام از دسته‌ها که با شرایط مدیای خود بخواند، اجرا می‌شوند. شرایط مدیا شامل mediatype و شروط expressions هستند که هر دو باید در وضعیت true قرار بگیرند تا کدهای درون مدیا اجرا شود.

اگر از only به عنوان محدودکننده و از not به عنوان منفی‌کننده استفاده نکنید، مشخص کردن نوع mediatype اختیاری است و اگر استفاده نشود همه انواع دستگاه‌ها مد نظر قرار می‌گیرد. انواع واژگانی که می‌توانید به عنوان mediatype به کار ببرید به شرح زیر است:

نوع مدیاتوضیح
screenفقط برای نمایش‌گرها به کار می‌رود.
printبرای پرینترها کاربرد دارد.
speechبرای دستگاه‌های خوانش به کار می‌رود.
allهمه انواع دستگاه‌ها رو مد نظر قرار می‌دهد.

همچنین شرطی که می‌خواهیم به دستگاه انتخابی اعمال شود را در قسمت expressions به کار می‌بریم. شروط زیادی وجود دارند که شامل طول و عرض دستگاه، طول و عرض نمایش‌گر، جهت دستگاه، رزولوشن و غیره می‌شود. مهم‌ترین موارد شرطی را در جدول زیر مشاهده می‌کنید و برای موارد کم‌مصرف‌تر می‌توانید گوگل کنید:

اسم شرطتوضیح
aspect-ratioنسبت طول به عرض صفحه وب.
max-aspect-ratioحداکثر نسبت طول به عرض صفحه وب.
min-aspect-ratioحداقل نسبت طول به عرض صفحه وب.
heightطولی که صفحه وب در آن نمایش داده می‌شود.
max-heightحداکثر طولی که صفحه وب در آن نمایش داده می‌شود.
min-heightحداقل طولی که صفحه وب در آن نمایش داده می‌شود.
widthعرضی که صفحه وب در آن نمایش داده می‌شود.
max-widthحداکثر عرضی که صفحه وب در آن نمایش داده می‌شود.
min-widthحداقل عرضی که صفحه وب در آن نمایش داده می‌شود.
orientationجهت‌گیری دستگاه که دو مقدار portrait و landscape دارد.

چند مثال

می‌خواهیم بنویسیم که اگر عرض صفحه محتوی وب از 320 پیکسل کم‌تر باشد، رنگ پس‌زمینه وب قرمز شود. می‌توان نوشت:

@media only screen and (max-width: 320px){
  body{
    color: red;
  }
}

می‌خواهیم بنویسیم اگر صفحه وب افقی باشد اندازه فونت 14 و در غیر این صورت 12 پیکسل باشد. می‌توان نوشت:

@media only screen and (orientation: landscape) {
  body {
    font-size: 14px;
  }
}
@media only screen and (orientation: portrait) {
  body {
    font-size: 12px;
  }
}

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

@media only screen and (min-aspect-ratio: 3/2){
  body{
    background-color: #ccc;
  }
}

می‌خواهیم اگر طول صفحه وب بیشتر از 300 پیکسل باشد، برای عرض‌های کم‌تر از 320 پیکسل یا عرض‌های بیش‌تر از 1000 پیکسل، رنگ پس‌زمینه آبی شود. با استفاده از کاما‌ به عنوان اوپراتور OR می‌توان نوشت:

@media (min-height: 300px) and (max-width: 320px),
       (min-height: 300px) and (min-width: 1000px) {
  body{
    background-color: blue;
  }
}

سخن آخر

تا این‌جا همه چیز سرراست است. یک مطلب باقی می‌ماند و آن این‌که اگر بخواهیم از فایل‌های CSS خارجی استفاده کنیم و هر فایل را مخصوص شرایط خاص طراحی کرده و بسته به وقوع آن شرط در کد HTML خود لود کنیم می‌توانیم شرط‌های مدیا را در کد HTML خود به صورت زیر به کار ببریم:

<link rel="stylesheet" media="not|only mediatype and (expressions)" href="style.css">

همان‌طور که می‌بینید ترکیب بسیار شبیه به موارد توضیح داده شده است. در واقع هم mediatype و هم expressions داخل attribute مدیا قرار می‌گیرند و اگر صحت هردو برقرار باشد، فایل style.css لود می‌شود.

8 اردیبهشت دسته‌هاوردپرس برچسب‌هاwordpress و وردپرس

چگونه در وردپرس از نیم‌فاصله استفاده کنیم؟

استفاده از نیم‌فاصله برای نگارش یک متن فارسی درست و استاندارد ضروری است. همه‌ی ما به تعدادی Shortcut برای گذاشتن نیم‌فاصله عادت داریم. مثلا در نرم افزار Microsoft Word از ترکیب Ctrl و علامت منها استفاده می‌کنیم. اما زمانی که کار به نوشتن در وب و استفاده از وردپرس، فتوشاپ و نرم‌افزارهای دیگر برسد، ممکن است دچار مشکل شویم. پس چگونه در وردپرس از نیم‌فاصله استفاده کنیم؟

1 اردیبهشت دسته‌هاجاوااسکریپت برچسب‌هاجاوااسکریپت

10 متد مفید جاوااسکریپت در رابطه با آرایه‌ها

سلام دوستان. امیدوارم حالتون خوب باشه. در موقع کار کردن با جاوااسکریپت یکی از مواردی که زیاد استفاده می‌شه آرایه‌ها هستند و برای کار کردن با آرایه‌ها باید بتونید اون‌ها رو به شکل دلخواهتون دست‌کاری کنید. در این‌جا مقاله‌ای رو باهم مرور می‌کنیم که 10 متد مفید و مهم رو برای کار کردن با آرایه‌ها بررسی و با مثال بیان کرده. البته ممکن هست که بعضی جاها رو با توضیح بیش‌تر یا به شکل متفاوتی بیان کنم. لینک اصلی مقاله رو هم براتون آخر مقاله می‌ذارم.

27 تیر دسته‌هاجاوااسکریپت برچسب‌هاMap، Set، و جاوااسکریپت

Map و Set در جاوااسکریپت

اکثر برنامه نویسان با ساختارهای دلده آرایه و آبجکت آشنایی دارند اما در عمل این دو نوع ساختار کافی نبوده‌اند. برای همین ساختارهای Map و Set در جاوااسکریپت معرفی شده‌اند که در ادامه آن‌ها را بررسی می‌کنیم. بنابراین با ما همراه باشید.

11 اردیبهشت دسته‌هاجاوااسکریپت برچسب‌هاPromise و جاوااسکریپت

Promiseها در جاوااسکریپت - بخش سوم

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