دسته : آموزش رایگان CSS
یکی از اجزای رابط کاربری مدرن، Toggle Switch یا کلید تغییر وضعیت است که معمولاً برای روشن و خاموش کردن حالتهای مختلف در اپلیکیشنها و وبسایتها به کار میرود. با استفاده از CSS و HTML میتوانید به سادگی یک Toggle Switch زیبا و کاربردی ایجاد کنید. در این مقاله، نحوه ساخت و طراحی یک Toggle Switch با استفاده از CSS و HTML به صورت گام به گام آموزش داده شده است.
ابتدا نیاز به یک ساختار ساده HTML داریم که شامل یک checkbox برای کنترل وضعیت و یک label برای استایلدهی به آن است. از checkbox استفاده میکنیم زیرا به صورت داخلی وضعیت انتخاب شده (چکشده) یا نشده را کنترل میکند.
< div class="toggle-container" >
< input type="checkbox" id="toggle" class="toggle-checkbox" >
< label for="toggle" class="toggle-label" > < / label >
< / div >
در اینجا:
یک input از نوع checkbox برای کنترل وضعیت ایجاد کردهایم.
یک label به عنوان دکمه برای تغییر وضعیت استایل دادهایم که در صورت کلیک، وضعیت checkbox تغییر میکند.
در این مرحله، استایلهای پایهای را به عناصر اضافه میکنیم تا ظاهر مناسبی برای Toggle Switch ایجاد شود.
/* مخفی کردن checkbox */
.toggle-checkbox {
display: none;
}
/* استایلدهی به toggle container */
.toggle-container {
display: inline-block;
position: relative;
width: 50px;
height: 24px;
}
/* استایلدهی label برای نمایش toggle switch */
.toggle-label {
display: block;
width: 100%;
height: 100%;
background-color: #ccc;
border-radius: 24px;
cursor: pointer;
transition: background-color 0.3s;
}
در اینجا:
checkbox را مخفی کردهایم زیرا برای کنترل Toggle Switch از label استفاده میکنیم.
toggle-container عرض و ارتفاع معین و موقعیت نسبی برای نگهداری کلید تعیین شده است.
toggle-label به عنوان کلید تغییر وضعیت طراحی شده و با رنگ پسزمینه و شعاع حاشیه به شکل دایرهای درمیآید.
برای ایجاد دکمه داخلی که در داخل toggle حرکت میکند، از ::before استفاده میکنیم.
.toggle-label::before {
content: '';
position: absolute;
top: 2px;
left: 2px;
width: 20px;
height: 20px;
background-color: white;
border-radius: 50%;
transition: transform 0.3s;
}
در اینجا:
toggle-label::before دکمه داخلی را شبیهسازی میکند که به شکل یک دایره کوچک است و در موقعیت اولیه خود در سمت چپ toggle قرار میگیرد.
transform به منظور ایجاد انیمیشن برای حرکت دکمه در هنگام تغییر وضعیت اضافه شده است.
در این مرحله، حالت روشن (فعال) را با استفاده از انتخابگر
ایجاد میکنیم تا رنگ و موقعیت دکمه داخلی در صورت انتخابشده تغییر کند.
.toggle-checkbox:checked + .toggle-label {
background-color: #4caf50;
}
.toggle-checkbox:checked + .toggle-label::before {
transform: translateX(26px);
}
در اینجا:
background-color رنگ پسزمینه toggle-label را هنگام فعال شدن به سبز تغییر میدهد.
transform: translateX(26px) دکمه داخلی را به سمت راست منتقل میکند تا نشان دهد toggle در حالت روشن است.
برای زیبایی بیشتر، انیمیشن حرکت دکمه را نرمتر میکنیم تا هنگام تغییر وضعیت، یک جلوه بصری جذاب داشته باشیم.
.toggle-label {
transition: background-color 0.3s ease;
}
.toggle-label::before {
transition: transform 0.3s ease;
}
در اینجا:
از ease در transition استفاده کردهایم تا تغییرات رنگ پسزمینه و حرکت دکمه نرمتر و روانتر انجام شود.
< div class="toggle-container" >
< input type="checkbox" id="toggle" class="toggle-checkbox" >
< label for="toggle" class="toggle-label" > < / label >
< / div >
/* مخفی کردن checkbox */
.toggle-checkbox {
display: none;
}
/* استایلدهی به toggle container */
.toggle-container {
display: inline-block;
position: relative;
width: 50px;
height: 24px;
}
/* استایلدهی label برای نمایش toggle switch */
.toggle-label {
display: block;
width: 100%;
height: 100%;
background-color: #ccc;
border-radius: 24px;
cursor: pointer;
transition: background-color 0.3s ease;
}
/* دکمه داخلی toggle */
.toggle-label::before {
content: '';
position: absolute;
top: 2px;
left: 2px;
width: 20px;
height: 20px;
background-color: white;
border-radius: 50%;
transition: transform 0.3s ease;
}
/* استایلدهی برای حالت فعال toggle */
.toggle-checkbox:checked + .toggle-label {
background-color: #4caf50;
}
.toggle-checkbox:checked + .toggle-label::before {
transform: translateX(26px);
}
تجربه کاربری: اندازه و موقعیت toggle را به گونهای طراحی کنید که کاربر به راحتی بتواند از آن استفاده کند. معمولاً width حدود 50px و height حدود 24px اندازه مناسبی است.
نمایش وضعیت فعلی: از رنگهای متمایز (مانند سبز برای روشن و خاکستری برای خاموش) برای نمایش وضعیت toggle استفاده کنید تا کاربران بتوانند وضعیت فعلی را به راحتی تشخیص دهند.
سازگاری با مرورگرهای مختلف: مطمئن شوید که toggle شما در مرورگرهای مختلف به درستی نمایش داده میشود و عملکرد مشابهی دارد.
استفاده از transition: انیمیشنهای نرم و سریع باعث میشود که تجربه کاربری بهتری برای کاربران ایجاد شود.
با استفاده از CSS و HTML، به سادگی میتوانید یک Toggle Switch زیبا و کاربردی ایجاد کنید. با ترکیب انتخابگرهای CSS و انیمیشنها، میتوانید تجربهای جذاب برای کاربران فراهم کنید و رابط کاربری خود را حرفهایتر کنید. طراحی Toggle Switch میتواند در بهبود تعاملات کاربر نقش مهمی داشته باشد و تجربهای لذتبخش از وبسایت یا اپلیکیشن شما ایجاد کند.
نظری یافت نشد
آموزش ایجاد یک پروژه ساده React: شروع کار و ساختاردهی کامپوننتها
28م شهریور 1402
مطالعه بیشتر
آموزش انیمیشنهای پیشرفته با keyframes در CSS: طراحی حرکات پویا و چند مرحلهای
18م شهریور 1402
مطالعه بیشتر
کاربرد تگهای meta، title و keywords در سئو: راهنمای جامع بهینهسازی وبسایت
25م مرداد 1402
مطالعه بیشتر
آموزش توسعه بازیهای ساده با استفاده از جاوا اسکریپت و Canvas API: راهنمای گام به گام
5م آبان 1403
مطالعه بیشتر
آشنایی با انواع انتخابگرها و تغییر پسزمینه با CSS: راهنمای جامع
4م شهریور 1402
مطالعه بیشتر
مفاهیم پیشرفته در کلاسها و وراثت (Super, Extends) در جاوا اسکریپت: راهنمای کامل و مثالها
29م مهر 1403
مطالعه بیشتر
آموزش مفاهیم پایهای اشیاء در جاوا اسکریپت: تعریف، ویژگیها و متدها
2م شهریور 1403
مطالعه بیشتر
آموزش کار با رویدادهای فرم و اعتبارسنجی فرمها در جاوا اسکریپت: راهنمای جامع
3م آبان 1403
مطالعه بیشتر
استفاده از clip-path در CSS برای برشهای زیبا و جذاب: راهنمای کامل
16م آبان 1403
مطالعه بیشتر
ایجاد Layoutهای واکنشگرا با flex-direction و justify-content در CSS Flexbox: راهنمای جامع
11م آبان 1403
مطالعه بیشتر
آموزش ایجاد تصویر و لینک در HTML: نحوه استفاده از تگهای img و a
21م مرداد 1402
مطالعه بیشتر
مفهوم متغیرها و انواع داده در جاوا اسکریپت: راهنمای جامع برای مبتدیان
28م شهریور 1402
مطالعه بیشتر
تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد