ویژگی CSS animation-name

css animation name guide
20 آبان 1403

درک ویژگی CSS Animation-name به سادگی

اگر تا به حال با انیمیشن‌های CSS کار کرده‌اید، احتمالاً می‌دانید که تعریف یک انیمیشن مناسب نیاز به درک چندین ویژگی کلیدی دارد. یکی از این ویژگی‌ها، animation-name است که اصولاً به شناسایی نام انیمیشن به کار رفته کمک می‌کند. این نام به طور مستقیم با @keyframes ارتباط دارد و نحوه اجرای انیمیشن را تعیین می‌کند.

بیایید نگاهی دقیق‌تر به نحوه عملکرد این ویژگی داشته باشیم. ویژگی animation-name به شما اجازه می‌دهد تا نام یک انیمیشن تعریف‌شده در کد خود را به یک عنصر خاص پیوند دهید. این ویژگی یکی از چندین ویژگی انیمیشن است که به شما امکان کنترل کامل بر روی ظاهر و رفتار انیمیشن‌های CSS خود را می‌دهد.

به عنوان مثال، فرض کنید شما یک بلوک متنی در صفحه خود دارید که می‌خواهید آن را به تدریج از شفافیت صفر به شفافیت کامل برسانید و سپس معکوس کنید. با استفاده از animation-name، می‌توانید به سادگی این انیمیشن را به بلوک متنی خود اضافه کنید.

چرا از animation-name استفاده می‌کنیم؟

استفاده از animation-name به شما این امکان را می‌دهد تا انیمیشن‌های پیچیده و چندمرحله‌ای ایجاد کنید که شامل تغییرات متعدد در ظاهر و رفتار یک عنصر می‌شود. با این ویژگی، می‌توانید انیمیشن‌های خود را با سایر ویژگی‌های CSS مانند duration، timing-function، و delay ترکیب کنید تا به نتایج بصری خیره‌کننده دست یابید.

animation-name پایه و اساس سایر ویژگی‌های انیمیشن است، بنابراین قبل از استفاده از سایر ویژگی‌های انیمیشن، اطمینان پیدا کنید که یک نام منحصر به فرد برای انیمیشن‌های خود تعریف کرده‌اید. این کار به ساختاردهی و سازماندهی بهتر کد شما کمک می‌کند و مدیریت آن را آسان‌تر می‌سازد.

نمونه کدی برای شروع کار با animation-name


@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
.element {
  animation-name: fadeIn;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-delay: 1s;
}

توضیح خط به خط کد

@keyframes fadeIn:
این بخش از کد، نام انیمیشن را تعریف می‌کند و حالت‌های مختلف عناصر را در طول زمان تعیین می‌کند. در اینجا، ما بین شفافیت کامل و عدم شفافیت تغییر می‌دهیم.

0% { opacity: 0; }:
درصد اولیه، که وضعیت شروع انیمیشن را تعیین می‌کند. در اینجا، ما شفافیت را در صفر تنظیم کرده‌ایم.

100% { opacity: 1; }:
وضعیت نهایی انیمیشن که شفافیت عنصر را به ۱ تغییر می‌دهد.

.element { animation-name: fadeIn; }:
عنصر خاصی را به انیمیشن سفارشی پیوند می‌دهد تا اجرای آن را تحریک کند.

animation-duration: 2s;:
مدت زمان اجرای کامل انیمیشن را تعیین می‌کند، در اینجا ۲ ثانیه است.

animation-timing-function: ease-in-out;:
الگوی سرعت اجرای انیمیشن را تعیین می‌کند که نرم و تدریجی است، به نحوی که انیمیشن در ابتدا و انتها کُند و در وسط سریع است.

animation-delay: 1s;:
زمانی را قبل از شروع انیمیشن مشخص می‌کند، در اینجا 1 ثانیه تأخیر دارد.

سوالات متداول

؟

چطور می‌تونم از animation-name برای ساخت انیمیشن استفاده کنم؟

؟

آیا می‌توانم چند انیمیشن را به یک عنصر اختصاص دهم؟

؟

چطور می‌تونم انیمیشن رو برای یک دستگاه خاص اجرا کنم؟