سلام به همه پی وی لرنی های عزیز!
به دوره آموزش ویژگی های CSS خوش آمدید. CSS مخفف Cascade Style Sheets است که توسط W3C یا کنسرسیوم جهانی وب ایجاد شده است. اگر HTML اسکلت و ساختار وب است آنگاه CSS گوشت و پوست وب را تشکیل می دهد که ضعف های HTML را پوشش داده و آن ها را رفع می نماید. در این مجموعه از مجموعه آموزش های پی وی لرن قرار است به سراغ دوره آموزش ویژگی های CSS برویم و شما را با Properties ها یا ویژگی های CSS آشنا کنیم. روند هر جلسه این دوره به این شکل است که هر جلسه اختصاص به یک ویژگی دارد و در هر جلسه نیز برای هر Property یا ویژگی نیز سعی شده با ارائه مثال های مرتبط، یادگیری ویژگی های CSS آسان تر و ماندگارتر شود.
در جلسه گذشته ویژگی animation-play-state شناختیم و آموختیم که با کمک این ویژگی می توان تعیین کرد که انیمیشن در حال اجرا باشد و یا این که در حالت مکث قرار بگیرد.
در این جلسه قصد داریم به سراغ آموزش کار با ویژگی animation-timing-function در CSS برویم.
به مثال زیر توجه نمایید. در این مثال انیمیشن با یک سرعت مشخص از ابتدا تا انتهای آن اجرا می شود.
1 2 3 | div { animation-timing-function: linear; } |
ویژگی animation-timing-function در CSS یک منحنی سرعت را برای یک انیمیشن تعیین می کند.
منحنی سرعت، TIME را برای یک انیمیشن تعریف می کند تا برای تغییر مجموعه ای از استایل های CSS استفاده شود.
منحنی سرعت برای ایجاد تغییرات با سرعت کم مورد استفاده قرار می گیرد.
مقدار پیش فرض | ease |
به ارث بردن | خیر |
متحرک بودن | خیر |
نسخه | CSS3 |
سینتکس JavaScript | “object.style.animationTimingFunction=”linear |
در ادامه آموزش کار با ویژگی animation-timing-function در CSS جدولی ارائه کرده ایم که نشان می دهد این ویژگی CSS در چه مرورگر های پشیبانی می شود.
اعدادی که به دنبال -webkit- ، -moz- یا -o- آمده است اولین نسخه ای که با این پیشوند کار می کند را نشان می دهد.
نام ویژگی | |||||
animation-timing-function | ۴۳٫۰ ۴٫۰ -webkit- | ۱۶٫۰ ۵٫۰ -moz- | ۳۰٫۰ ۱۵٫۰ -webkit- ۱۲٫۰ -o- | ۹٫۰ ۴٫۰ -webkit- | ۱۰٫۰ |
1 | animation-timing-function: linear|ease|ease-in|ease-out|ease-in-out|step-start|step-end|steps(int,start|end)|cubic-bezier(n,n,n,n)|initial|inherit; |
animation-timing-function برای ایجاد منحنی سرعت از یک عملکرد ریاضی موسوم به منحنی Cubic Bezier استفاده می کند. می توانید از مقادیر خود در این تابع استفادده نمایید و یا از مقادیر پیشنهادی در جدول زیر استفاده نمایید.
مقدار | توضیح |
---|---|
linear | تعیین می کند که انیمیشن از ابتدا تا انتها سرعت مشابهی داشته باشد. |
ease | پیش فرض – انیمیشن در ابتدا به آهستگی شروع می شود و سپس سرعت می گیرد و باز آهسته به پایان می رسد. |
ease-in | انیمیشن آهسته شروع می شود. |
ease-out | انیمیشن در پایان آهسته می شود. |
ease-in-out | انیمیشن هم شروع و هم پایان آهسته ای دارد. |
step-start | معادل مراحل (۱, start) |
step-end | معادل مراحل (۱, end) |
(steps(int,start|end | مشخص می کند که اجرای انیمیشن به صورت عدد صحیح انجام شود. |
(cubic-bezier(n,n,n,n | استفاده از تابع cubic-bezier که ۴ مقدار می پذیرد و مقادیر ممکن مقادیر عددی از ۰ تا ۱ هستند. |
initial | ویژگی را به مقدار پیش فرض خود تنظیم می کند. |
inherit | این ویژگی را از عنصر parent خود به ارث می برد. |
برای درک بهتر مقادیر تابع timing در اینجا پنج عنصر مختلف <div> با پنج مقدار مختلف را آورده ایم.
1 2 3 4 5 | #div1 {animation-timing-function: linear;} #div2 {animation-timing-function: ease;} #div3 {animation-timing-function: ease-in;} #div4 {animation-timing-function: ease-out;} #div5 {animation-timing-function: ease-in-out;} |
مثال زیر همانند مثال بالا است اما منحنی های سرعت با تابع cubic-bezier تعریف شده اند:
1 2 3 4 5 | #div1 {animation-timing-function: cubic-bezier(0,0,1,1);} #div2 {animation-timing-function: cubic-bezier(0.25,0.1,0.25,1);} #div3 {animation-timing-function: cubic-bezier(0.42,0,1,1);} #div4 {animation-timing-function: cubic-bezier(0,0,0.58,1);} #div5 {animation-timing-function: cubic-bezier(0.42,0,0.58,1);} |
در این جلسه به آموزش کار با ویژگی animation-timing-function در CSS پرداختیم و آموختیم که این ویژگی یک منحنی سرعت را برای یک انیمیشن تعیین می کند.
در جلسه آینده شما را با ویژگی backface-visibility در CSS آشنا می کنم.
با پی وی لرن همراه باشید