آموزش رایگان CSS

آموزش ساخت افکت تصویر با تم اینستاگرام و انیمیشن چرخش دوره‌ای در CSS

1405/03/13 01:45 محراب حسن زاده
آموزش ساخت افکت تصویر با تم اینستاگرام و انیمیشن چرخش دوره‌ای در CSS

مقدمه

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

ساختار HTML پروژه

برای شروع کار، ابتدا به یک ساختار HTML ساده نیاز داریم. ما یک ظرف نگه‌دارنده (Container) برای تصویر ایجاد می‌کنیم و خود تصویر را درون یک بخش با کلاس مربوط به گرادیان اینستاگرام قرار می‌دهیم:


< div class="insta-profile-wrapper" >
    < div class="insta-story-ring" >
        < img src="https://picsum.photos/150/150" alt="پروفایل کاربر" / >
    < / div >
< / div >

استایل‌دهی و ایجاد افکت اینستاگرام با CSS

رنگ‌های به کار رفته در لوگو و حلقه استوری اینستاگرام ترکیبی از رنگ‌های زرد، نارنجی، سرخابی و بنفش است. ما این ترکیب رنگی را با استفاده از ویژگی linear-gradient در پس‌زمینه حلقه‌ دور عکس اعمال می‌کنیم. همچنین برای ایجاد فاصله بین عکس و گرادیان، یک مرز (Border) همرنگ با پس‌زمینه به تصویر اصلی می‌دهیم.

کدهای CSS مربوط به استایل‌دهی:


.insta-profile-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.insta-story-ring {
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    padding: 5px; /* فاصله گرادیان تا لبه بیرونی */
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    display: flex;
    justify-content: center;
    align-items: center;
    /* اتصال انیمیشن چرخش */
    animation: periodic-rotate 10s ease-in-out infinite;
}

.insta-story-ring img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 4px solid #1e1e1e; /* ایجاد فاصله سفید یا تاریک بین عکس و گرادیان */
    object-fit: cover;
}

انیمیشن چرخش دوره‌ای (Periodic Rotation)

برای اینکه چرخش تصویر به صورت مداوم و خسته‌کننده نباشد، از تکنیک زمان‌بندی در Keyframes استفاده می‌کنیم. در این روش، تصویر در اکثر مواقع ثابت است (مثلاً از درصد 0 تا 80 زمان انیمیشن) و فقط در انتهای بازه زمانی (از 80% تا 100%) یک دور کامل می‌چرخد. این کار باعث ایجاد حالت مکث و چرخش ناگهانیِ جذاب می‌شود.


@keyframes periodic-rotate {
    0%, 80% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

نتیجه‌گیری

با ترکیب ویژگی‌های ساده اما قدرتمند CSS مانند linear-gradient، فرآیند گرد کردن لبه‌ها با border-radius و انیمیشن‌های شخصی‌سازی‌شده، می‌توانید المان‌های تعاملی و بسیار مدرنی خلق کنید که تجربه کاربری وب‌سایت شما را بهبود می‌بخشند.


پیشنمایش

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

آموزش کامل دریافت اطلاعات فرم با متدهای GET و POST در PHP (با رعایت اصول امنیتی)
1405/04/27 22:06

آموزش کامل دریافت اطلاعات فرم با متدهای GET و POST در PHP (با رعایت اصول امنیتی)

مطالعه بیشتر
آموزش کامل کار با اعداد و توابع ریاضی در PHP (کامل و کاربردی)
1405/04/27 21:51

آموزش کامل کار با اعداد و توابع ریاضی در PHP (کامل و کاربردی)

مطالعه بیشتر
آموزش جامع مدیریت خطاها در PHP بر اساس استانداردهای گوگل
1405/05/01 20:23

آموزش جامع مدیریت خطاها در PHP بر اساس استانداردهای گوگل

مطالعه بیشتر
استفاده از Viewports و Viewport Units در CSS: طراحی واکنش‌گرا با vw، vh، vmin و vmax
1403/08/16 22:30

استفاده از Viewports و Viewport Units در CSS: طراحی واکنش‌گرا با vw، vh، vmin و vmax

مطالعه بیشتر
استفاده از visibility و opacity در CSS برای مخفی‌سازی عناصر: راهنمای کامل و کاربردی
1403/08/11 20:31

استفاده از visibility و opacity در CSS برای مخفی‌سازی عناصر: راهنمای کامل و کاربردی

مطالعه بیشتر
آموزش ساخت دیتابیس و جدول برای پروژه PHP طبق استاندارد گوگل
1405/05/04 23:38

آموزش ساخت دیتابیس و جدول برای پروژه PHP طبق استاندارد گوگل

مطالعه بیشتر
آموزش کار با Local Storage و Session Storage در جاوا اسکریپت: ذخیره‌سازی داده‌ها در مرورگر
1403/08/03 17:08

آموزش کار با Local Storage و Session Storage در جاوا اسکریپت: ذخیره‌سازی داده‌ها در مرورگر

مطالعه بیشتر
استفاده از CSS Scoped و استایل‌دهی به کامپوننت‌ها در Vue.js | آموزش کاربردی
1404/09/23 21:27

استفاده از CSS Scoped و استایل‌دهی به کامپوننت‌ها در Vue.js | آموزش کاربردی

مطالعه بیشتر
آموزش کامل توابع در PHP: از مقدماتی تا پیشرفته با استانداردهای گوگل
1405/04/16 01:02

آموزش کامل توابع در PHP: از مقدماتی تا پیشرفته با استانداردهای گوگل

مطالعه بیشتر
مدیریت رویدادها در جاوا اسکریپت: اضافه و حذف Event Listeners - آموزش جامع با مثال‌ها
1403/08/02 21:31

مدیریت رویدادها در جاوا اسکریپت: اضافه و حذف Event Listeners - آموزش جامع با مثال‌ها

مطالعه بیشتر
عملگرها و عبارات محاسباتی در جاوا اسکریپت: نحوه استفاده و کاربردهای مختلف
1402/06/28 00:20

عملگرها و عبارات محاسباتی در جاوا اسکریپت: نحوه استفاده و کاربردهای مختلف

مطالعه بیشتر
آموزش جامع پیاده‌سازی سطح دسترسی کاربران (ACL) در PHP
1405/05/14 22:17

آموزش جامع پیاده‌سازی سطح دسترسی کاربران (ACL) در PHP

مطالعه بیشتر

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