استفاده از ترنزیشن‌های CSS

css transition tutorial
20 آبان 1403

کار با CSS Transitions می‌تواند به شما کمک کند تا جلوه‌های جالبی را به صفحات وب خود اضافه کنید. این ویژگی به شما امکان می‌دهد تا تغییرات مشخصی را بر روی عناصر وب به صورت هموار (smooth) اعمال کنید. مثلاً، زمانی که نشانگر ماوس را بر روی یک دکمه می‌بردید، رنگ آن به آرامی تغییر می‌کند بدون اینکه هیچ انقطاع یا پرشی در آن دیده شود.

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

یکی از مزایای بزرگ استفاده از CSS Transitions این است که به کمک آن‌ها می‌توانیم تجربه کاربری (UX) بهتری ایجاد کنیم. کاربرانی که وارد وب‌سایت ما می‌شوند، می‌توانند تعامل طبیعی‌تری با عناصر صفحه داشته باشند. این مورد به ویژه برای دکمه‌ها، منوها، و افکت‌های Hover بسیار مفید است.

علاوه بر این، CSS Transitions یکی از بهترین روش‌ها برای ایجاد انیمیشن‌ها بدون استفاده از جاوا اسکریپت است. به‌جای نوشتن کد‌های پیچیده‌ی جاوا اسکریپت، می‌توانید از یک سری کدهای ساده استفاده کنید تا همین کار را انجام دهید.

در مثال زیر نشان داده‌ایم که چگونه می‌توانید یک دکمه با تغییر رنگ نرم ایجاد کنید. فایل CSS زیر را پیاده‌سازی کنید تا ببینید که چگونه تغییرات آرام و دلنشین انجام می‌شوند.

مثال کد


.button {
    background-color: #4CAF50; /* سبز */
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.button:hover {
    background-color: #45a049;
}

توضیح کد

.button
کلاسی برای تعریف دکمه با استفاده از CSS است.

خط background-color: #4CAF50;:
تعیین رنگ پس‌زمینه اولیه دکمه. رنگ سبز انتخاب شده است.

خط transition: background-color 0.3s ease;:
مشخص می‌کند که تغییرات رنگ پس‌زمینه در مدت 0.3 ثانیه با افکت نرم و روان اتفاق بیافتد.

.button:hover
استفاده از افکت Hover برای دکمه، تغییر رنگ پس‌زمینه هنگام قرارگیری ماوس روی دکمه.

خط background-color: #45a049;:
رنگ جدید برای وقتی که نشانگر ماوس روی دکمه است.

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

؟

چگونه می‌توانم زمان ترنزیشن را تغییر دهم؟

؟

آیا می‌توانم از ترنزیشن برای ویژگی‌های دیگر استفاده کنم؟

؟

ترنزیشن‌ها چه تأثیری بر روی کارایی سایت دارند؟