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

آموزش کار با انیمیشن ها یا Animations در CSS3

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

آموزش کار با انیمیشن ها یا Animations در CSS3

Free-Learn

کار با انیمیشن ها یا Animations در CSS3

در جلسه قبلی ما با ویژگی Transition آشنا شدیم و یاد گرفتیم که با استفاده از این ویژگی میتوان به تگ های درون صفحه افکت انتقال داد، حال در این جلسه ( آموزش کار با انیمیشن ها یا Animations در CSS3 ) میخوایم با ویژگی Animation آشنا شویم.

Animation ویژگی است که با استفاده از آن میتوان تگ های داخل یک صفحه وب رو به حرکت درآورد ( یا به اصطلاح همون متحرک سازی تگ ها )

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

در این جلسه میخوایم با ویژگی های زیر که مرتبط با انیمیشن ها هستند کار کنیم :

Free-Learn

آشنایی با قانون keyframes@ در CSS3

دستور keyframes@ میتونه یک قانون ( یا یک چهارچوب ) برای نحوه ی اجرا شدن انیمیشن ایجاد کنه، مثلا با استفاده از این قانون میتونیم بگیم یک عنصر در طول اجرای انیمیشن تا پایان اجرا، رنگ زمینش فلان رنگ باشد و دیگر ویژگی هایی که میتونیم روش اعمال کنیم.

نکته : باید نامی که برای keyframes مشخص میکنیم به عنوان مقدار برای ویژگی animation-name مشخصش کنیم، یعنی باید بهم وصل شن تا انیمیشن بتونه اجرا شه.

مثال شماره ۱ : مشخص کردن یک نام برای keyframes ، بعدش همون نام رو داخل ویژگی animation-name قرار میدیم برای اجرا شدن انیمیشن

Free-Learn

کار با ویژگی Animation-Name در CSS3

همونطور که از نام این ویژگی هم مشخصه ، با استفاده از آن میتوان یک نام را برای انیمیشن مشخص کرد، که این نام باید دقیقا همون نامی باشه که برای دستور / قانون keyframes@ مشخص کردیم.

مثال شماره ۱ : در مثال زیر رنگ عادی زمینه ی تگ قرمز هست، حال میخوایم با اجرا شدن انیمیشن رنگ زمینه ۶ ثانیه طول بکشه تا از رنگ قرمز به رنگ آبی تبدیل بشه.

امتحان کنید

Free-Learn

کار با ویژگی Animation-Duration در CSS3

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

مقداری که این ویژگی میتونه بپذیره واحد زمان می باشد : ( هر ۱۰۰۰ میلی ثانیه ۱ ثانیه می باشد )

  • s : برحسب ثانیه
  • ms : برحسب میلی ثانیه

مثال شماره ۱ : استفاده از ms

مثال شماره ۲ : استفاده از s ( که تو مثال بالا هم ازش استفاده کردیم )

Free-Learn

کار با ویژگی Animation-Delay در CSS3

با استفاده از این ویژگی میتونیم مشخص کنیم که چه مدت زمان بگذره بعدش انیمیشن شروع بشه، یعنی مثلا میگیم ۳ ثانیه بگذره بعدش انیمیشن شروع بشه.

مقداری که این ویژگی میتونه بپذیره واحد زمان می باشد : ( هر ۱۰۰۰ میلی ثانیه ۱ ثانیه می باشد )

  • s : برحسب ثانیه
  • ms : برحسب میلی ثانیه

مثال : ۳ ثانیه طول میکشه تا انیمیشن اجرا بشه

امتحان کنید

Free-Learn

کار با ویژگی Animation-Iteration-Count در CSS3

در ادامه ی ( آموزش کار با انیمیشن ها یا Animations در CSS3 ) میخواهیم با ویژگی Animation-Iteration-Count آشنا شویم، با استفاده از این ویژگی میتوان تعداد دفعات اجرای انیمیشن را مشخص کرد، مثلا بگیم انیمیشن ما به تعداد ۳ بار تکرار شود.

این ویژگی ۲ مقدار زیر را میتواند بپذیرد :

  • number : بصورت عددی
  • infinite : نامحدود و تا همیشه

مثال شماره ۱ : اجرا با تعداد دفعات مشخص شده

امتحان کنید

مثال شماره ۲ : اجرای بی نهایت

امتحان کنید

Free-Learn

کار با ویژگی Animation-Direction در CSS3

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

  • normal : گزینه پیش فرض
  • reverse : جهت شروع انیمیشن را معکوس میکند
  • alternate : از نقطه شروع بسمت نقطه پایان بصورت متناوب
  • alternate-reverse : از نقطه پایان بسمت نقطه شروع بصورت متناوب

مثال شماره ۱ : در حالت معکوس یا reverse

امتحان کنید

مثال شماره ۲ : در حالت متناوب Alternate ( از نقطه شروع میره به پایان دوباره درجا بدون مکث برمیگرده )

امتحان کنید

Free-Learn

کار با ویژگی Animation-Timing-Function در CSS3

با استفاده از این ویژگی نیز میتوان یک منحنی / تابع زمانی ( برای نحوه اجرای انیمیشن ) ایجاد کرد.

  • linear : از شروع تا پایان با سرعت یکسان
  • ease-in : شروع با سرعت کم و یواش
  • ease-out : پایان با سرعت کم و یواش
  • ease-in-out : شروع و پایان با سرعت کم
  • steps(int,start|end) : تکه تکه کردن سرعت اجرای انیمیشن
  • cubic-bezier(0-1,0-1,0-1,0-1) : استفاده از مکعب بزیر یک مقدار از ۰ تا ۱

مثال شماره ۱ : از حالت linear

مثال شماره ۲ : از حالت ease-in-out

مثال شماره ۳ : از حالت steps(int,start|end)

 

مثال شماره ۴ : از حالت cubic-bezier ( 4 بخش داره و هر بخش یک مقدار از ۰٫۰ تا ۱ میگیره  )

امتحان کنید

Free-Learn

کار با ویژگی Animation-Fill-mode در CSS3

خب در ادامه آموزش کار با انیمیشن ها یا Animations در CSS3 میخوام شمارو با ویژگی Animation-Fill-mode آشنا کنم، لطفا با من همراه باشید.

خب اگه توجه کرده باشید وقتی انیمیشن تموم میشه ، استایلش رو از دست میده ، مثلا اگه یه تگ در حالت عادی رنگ زمینش قرمز باشه و در حین اجرای انیمیشن رنگ زمینش آبی بشه، وقتی انیمیشن تموم شد دوباره رنگ زمینش میشه قرمز، یعنی برمیگرده به حالت اولش

حال با استفاده از ویژگی Animation-Fill-mode میتونیم استایل تگ رو بعد از پایان انیمیشن همچنان حفظ کنیم.

  • forwards : حفظ آخرین قانون / استایل از کی فریم
  • backwards : حفظ اولین قانون / استایل از کی فریم
  • both : هر۲حالت

مثال شماره ۱ : حالت Backwards  ( استایل اولین دستور داخل keyframes رو حفظ میکنه )

امتحان کنید

مثال شماره ۲ : حالت Forwards ( استایل آخرین دستور داخل keyframes رو حفظ میکنه )

امتحان کنید

مثال شماره ۳ : حالت both ( در هر ۲حالت )

Free-Learn

خلاصه نویسی ویژگی Animation

خب دوستان به پایان آموزش کار با انیمیشن ها یا Animations در CSS3 رسیدیم، در آخر میخوام شمارو با نحوه خلاصه نویسی این ویژگی آشنا کنم.

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

شکل کلی برای خلاصه نویسی ویژگیی Animation :

 

مثال شماره ۱ : استفاده از تمامی مقادیر به جز Play-State ( آموزش ویژگی Play-State )

امتحان کنید

Free-Learn

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