این آموزش در تاریخ ۱۴۰۰/۱۱/۰۱ آپدیت شده است.

آموزش ویژگی filter در CSS

سلام خدمت تمامی دوستان و همراهان محترم سایت آموزشی فری لرن ، امیدوارم که حال همگیتون خوب باشه. لطفا در ادامه با آموزش ویژگی filter در CSS با من همراه باشید.

آموزش ویژگی filter در CSS

Free-Learn

ویژگی filter در CSS

با استفاده از ویژگی filter در CSS میتوان افکت ( Effect ) / جلوه های رنگی ( مثه سیاه و سفید ، تاری ، شفافیت و.. ) را بروی عناصر ( بیشتر بروی تصاویر ) در یک صفحه وب ایجاد و یا تعریف کرد.

Free-Learn

مثال از این ویژگی

در ادامه میتوانید یک مثال از ویژگی filter را در زبان CSS مشاهده نمایید.

مثال شماره ۱ : استفاده از فیلتر ( grayscale )

امتحان کنید

مثال شماره ۲ : استفاده از فیلتر ( blur )

امتحان کنید

مثال شماره ۳ : استفاده از ۲ عدد فیلتر ( drop-shadow , sepia )

امتحان کنید

مثال شماره ۴ : متحرک سازی ویژگی filter با استفاده از انیمیشن ها در CSS

امتحان کنید

مثال شماره ۵ : استفاده از مقدار url جهت فراخوانی فیلترهای SVG

امتحان کنید

مثال شماره ۶ : وقتی فیلتر روی پدر اعمال بشه خب بصورت خودکار روی فرزندان هم اعمال میشه، حال یه ترفند برای جلوگیری از اعمال شدن فیلتر بروی فرزندان هستش اونم استفاده از شبه عنصر before ، یعنی فیلتر رو، روی شبه عنصر before اعمال میکنیم

امتحان کنید

Free-Learn

جدول مشخصات ویژگی filter در CSS

در جدول زیر میتوانید مشخصات کلی این ویژگی را در زبان CSS مشاهده نمایید.

مقدار پیش فرض none
قابل ارث بری ندارد | اطلاعات بیشتر
قابل متحرک سازی دارد | اطلاعات بیشتر
نسخه CSS3
نحوه استفاده در جاوااسکریپت object.style.filter=”grayscale(100%)”;

Free-Learn

پشتیبانی مرورگرها

در جدول زیر میتوانید مشاهده نمایید که آیا مرورگرهای اینترنتی از ویژگی filter در CSS پشتیبانی میکنند یا خیر.

» عددی که در کنار -webkit- وجود دارد ، یعنی از آن نسخه به بالا باید از این پیشوند استفاده نمایید. ( درباره پیشوندها بیشتر بخوانید )

نام ویژگی Chrome Firefox Opera Safari Edge
filter ۵۳
۱۸ تا ۵۲ -webkit-
۳۵ ۴۰
۱۵ تا ۳۹ -webkit-
۹٫۱
۶ تا ۹ -webkit-
۷۹

Free-Learn

شکل نوشتاری

نحوه نوشتن یا استفاده یا سینتَکس (Syntax) این ویژگی در CSS بصورت زیر می باشد.

Free-Learn

جدول مقادیر ویژگی filter در CSS

در جدول زیر میتوانید، مقادیری را که میتوان در این ویژگی استفاده کرد مشاهده نمایید.

مقدار توضیح
none پیش فرض – هیچ فیلتری بروی عناصر ایجاد نخواهد شد
blur(px) باعث میشود عنصر بصورت تار نمایش داده شود
(%)brightness میزان روشنایی / شفافیت عنصر را مشخص میکند
۰% باعث میشه عنصر بصورت کامل سیاه شود
و هر مقداری بیشتر از %۱۰۰ باعث روشنایی بیشتر عنصر میشه
(%)contrast میزان کنتراست عنصر را مشخص میکند
۰% باعث میشه عنصر بصورت کامل سیاه شود
و هر مقداری بیشتر از %۱۰۰ باعث کنتراست بیشتر عنصر میشه
()drop-shadow برای ایجاد سایه برای عنصر
مثال :
(%)grayscale برای سیاه و سفید شدن عنصر
از %۰ به سمت %۱۰۰ باعث میشه عنصر سیاه و سفید شه
hue-rotate(deg) میزان چرخش / درجه رنگ بروی عنصر
از ۰ درجه تا ۳۶۰ درجه میتواند مقدار بپذیرد
(%)invert میزان معکوس شدن رنگ عنصر
از %۰ تا %۱۰۰ میتواند مقدار بپذیرد
(%)opacity میزان تاری / شفافیت عنصر را مشخص میکند
۰% کاملا تار / کدر می باشد و هرچه به سمت %۱۰۰ برود شفاف میشود
(%)saturate میزان اشباع رنگ عنصر را مشخص میکند
مقدار بیشتر از %۱۰۰ باعث زیاد شدن میزان اشباع شدن عنصر میشه
(%)sepia ایجاد افکت سِپیا ( قهوه ای ) بروی عنصر
از %۰ تا ۱۰۰% میتواند مقدار بپذیرد
هرچقدر بسمت %۱۰۰ برود قهوه ای بیشتر میشود
()url برای فراخوانی مسیر فایل SVG یا استفاده از لنگر
نحوه فراخوانی لنگر بصورت زیر می باشد :
initial استفاده از مقدار پیش فرض یا اولیه | اطلاعات بیشتر
inherit استفاده از مقدار پدر یا والد ( به ارث بری ) | اطلاعات بیشتر

Free-Learn

نکات و توضیحات

  • از مقادیر منفی نمیتوان در مقادیر grayscale ، invert ، opacity ، saturate و sepia استفاده کرد.

تفاوت drop-shadow با box-shadow چیست؟

  • خب ما یه drop-shadow داریم و یه box-shadow که هردوتاش میتونن برای یک عنصر سایه ایجاد کنند ولی این دوتا یسری تفاوت هایی دارند که این تفاوت ها به شرح زیر می باشند :
  • box-shadow خودش یه ویژگی هست ولی drop-shadow یه مقدار برای ویژگی filter
  • box-shadow به باکس اصلی ( عنصر ) سایه میده ولی drop-shadow به باکس اصلی سایه نمیده
  • مثلا اگه بخوایم به یه تصویر که با فرمت PNG ( یعنی تصاویری که زمینه ندارند ) سایه بدیم اگه از box-shadow استفاده کنیم سایه به دور کل تصویر و باکس اصلی تصویر ایجاد میشه ولی drop-shadow باعث میشه سایه فقط به دور خوده تصویر کشیده بشه نه باکس تصویر ( مشاهده مثال )

برای استفاده از چندین فیلتر بصورت همزمان، باید بین هر یک از فیلترها (یک فاصله ) قرار داد : مثال

برخی از مرورگرها در نسخه های قدیمی تر از این ویژگی پشتیبانی نمی کنند لذا باید برای حل این مشکل از یسری دستورات پیشوندی از نسخه مشخص شده آن مرورگر ( که در جدول پشتیبانی مرورگرها مشخص شده ) استفاده نمایید.

  • -webkit- برای مرورگر کروم و سافاری و اُپرا

Free-Learn

دریافت PDF یا پرینت این مطلب