FA-TOOLS — Header Component

ترفندهای استایل‌دهی به اسکرول‌بار (Custom Scrollbar) با ظاهر مینیمال و مخفی‌شونده

سلام رفیق برنامه‌نویس! تا حالا شده از اون اسکرول‌بارهای پیش‌فرض و بی‌روح مرورگرت خسته بشی و دلت بخواد یه چیزی خوشگل‌تر، مینیمال‌تر یا حتی کلاً نامرئی داشته باشی؟ خب، امروز اومدیم تا دقیقاً همین کارو با هم انجام بدیم. استایل‌دهی به اسکرول‌بار نه تنها می‌تونه تجربه کاربری سایتت رو حسابی ارتقا بده، بلکه به زیبایی و یکپارچگی طراحی UI/UX هم کمک شایانی می‌کنه. بیا دست‌به‌کار بشیم و نشون بدیم که حتی یه جزء کوچیک مثل اسکرول‌بار هم می‌تونه کلی حرف برای گفتن داشته باشه.

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


کلیک کن و ببین چه خبره: فا تولز

برای هر سوال یا نیاز فوری هم می‌تونی با ما تماس بگیری: 09202232789

🗺️ نقشه راه: چطور اسکرول‌بار رو زیبا کنیم؟

1️⃣ چرا سفارشی‌سازی؟

  • ✨ بهبود تجربه کاربری
  • 🎨 یکپارچگی با طراحی
  • 🛠️ حل مشکلات بصری

2️⃣ ابزارهای اصلی

  • 🌐 Webkit (Chrome, Edge, Safari)
  • 🦊 Firefox (scrollbar-width, scrollbar-color)
  • 💡 جاوااسکریپت (کامل‌ترین کنترل)

3️⃣ طراحی مینیمال و مخفی

  • 📏 باریک و نامحسوس
  • 👻 مخفی‌شونده روی هاور
  • 💨 حذف کامل (در صورت لزوم)

4️⃣ نکات پیشرفته

  • 📱 ریسپانسیو بودن
  • ♿ دسترسی‌پذیری
  • ⚡ بهبود عملکرد
  • 🔍 عیب‌یابی مشکلات

چرا اصلا باید اسکرول‌بار رو دستکاری کنیم؟

شاید بپرسی خب، اسکرول‌بار همون اسکرول‌باره دیگه، چرا باید وقت بذاریم و استایلش رو عوض کنیم؟ جواب خیلی ساده‌ست: تجربه کاربری (UX) و زیبایی‌شناسی. اسکرول‌بارهای پیش‌فرض مرورگرها معمولاً خاکستری، پهن و گاهی اوقات واقعاً ناجورن. وقتی یه طراحی زیبا و مینیمال برای وبسایتت پیاده کردی، وجود یه اسکرول‌بار زمخت و بی‌روح می‌تونه کل زحماتت رو زیر سوال ببره.

تصور کن یه وبسایت با طراحی مدرن و رنگ‌های خاص داری؛ حالا یهو یه اسکرول‌بار قدیمی و آبی‌رنگ موروثی از ویندوز ۹۸ می‌بینی! این دیگه فاجعه‌ست! سفارشی‌سازی اسکرول‌بار به ما اجازه می‌ده تا:

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

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

روش‌های اصلی استایل‌دهی به اسکرول‌بار

قبل از اینکه بریم سراغ کدهای جالب، باید بدونیم که استایل‌دهی به اسکرول‌بار توی همه مرورگرها به یه شکل نیست. متأسفانه، استانداردهای جهانی CSS برای این کار هنوز اونقدر که باید فراگیر نشدن و مجبوریم از رویکردهای مختلفی استفاده کنیم.

۱. استفاده از Webkit برای مرورگرهای مبتنی بر کرومیوم (Chrome, Edge, Safari)

اکثر کاربران اینترنت امروزه از مرورگرهایی مثل کروم، اج (نسخه‌های جدید)، و سافاری استفاده می‌کنن که همگی بر پایه موتور رندرینگ Webkit هستند. این مرورگرها از یک سری شبه‌عنصر (pseudo-elements) خاص برای استایل‌دهی به اسکرول‌بار پشتیبانی می‌کنن. این روش، قوی‌ترین و رایج‌ترین راه برای کاستومایز کردن اسکرول‌باره.

شبه‌عناصر اصلی که باید باهاشون کار کنیم این‌ها هستند:

* `::-webkit-scrollbar`: کل نوار اسکرول‌بار (تراکم).
* `::-webkit-scrollbar-track`: پس‌زمینه اسکرول‌بار که انگشتانه (thumb) روی اون حرکت می‌کنه.
* `::-webkit-scrollbar-thumb`: انگشتانه یا همون بخشی که کاربر باهاش اسکرول می‌کنه.
* `::-webkit-scrollbar-corner`: گوشه‌ای که در تقاطع اسکرول‌بار افقی و عمودی قرار می‌گیره.

بیا یه نمونه کد رو با هم ببینیم تا قضیه برات روشن‌تر بشه:

کپی کد

/* استایل‌دهی به کل اسکرول‌بار */
::-webkit-scrollbar {
    width: 8px; /* عرض اسکرول‌بار عمودی */
    height: 8px; /* ارتفاع اسکرول‌بار افقی */
}

/* استایل‌دهی به Track (مسیر حرکت) اسکرول‌بار */
::-webkit-scrollbar-track {
    background: #f1f1f1; /* رنگ پس‌زمینه مسیر */
    border-radius: 10px;
}

/* استایل‌دهی به Thumb (انگشتانه) اسکرول‌بار */
::-webkit-scrollbar-thumb {
    background: #888; /* رنگ انگشتانه */
    border-radius: 10px;
}

/* تغییر رنگ انگشتانه هنگام هاور */
::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* برای یک اسکرول‌بار خاص (مثلاً در یک دیو) */
.my-custom-div::-webkit-scrollbar {
    width: 6px;
}

.my-custom-div::-webkit-scrollbar-thumb {
    background: #607d8b;
}

.my-custom-div::-webkit-scrollbar-track {
    background: #eceff1;
}

نکته: این استایل‌ها رو می‌تونی برای body کل صفحه یا برای هر عنصر خاصی که overflow: scroll یا overflow: auto داره اعمال کنی.

برای جزئیات بیشتر و اسنیپت‌های CSS آماده، حتماً یه سری به بخش اسنیپت‌های CSS فا تولز بزن. اونجا کلی کد مفید و کاربردی برای کارهای مختلف پیدا می‌کنی!

۲. استفاده از استایل‌های Firefox با `scrollbar-width` و `scrollbar-color`

فایرفاکس (Firefox) رویکرد متفاوتی برای استایل‌دهی به اسکرول‌بار داره. به جای شبه‌عناصر Webkit، از ویژگی‌های CSS استانداردتر مثل `scrollbar-width` و `scrollbar-color` استفاده می‌کنه. خبر خوب اینه که این ویژگی‌ها در مسیر استاندارد شدن در W3C هستند، پس در آینده ممکنه کاربرد بیشتری پیدا کنن.

* `scrollbar-width`: عرض اسکرول‌بار رو تعیین می‌کنه. مقادیرش می‌تونن `auto` (پیش‌فرض مرورگر)، `thin` (باریک) یا `none` (مخفی) باشن.
* `scrollbar-color`: رنگ انگشتانه و مسیر اسکرول‌بار رو به ترتیب تعیین می‌کنه.

کپی کد

/* برای کل صفحه */
body {
    scrollbar-width: thin; /* اسکرول‌بار باریک */
    scrollbar-color: #888 #f1f1f1; /* رنگ انگشتانه و بعدش رنگ مسیر */
}

/* برای مخفی کردن کامل اسکرول‌بار در فایرفاکس */
.hidden-scrollbar-firefox {
    scrollbar-width: none;
}

نکته: ویژگی scrollbar-width: none; در فایرفاکس باعث میشه اسکرول‌بار کاملاً ناپدید بشه، اما قابلیت اسکرول همچنان وجود داره. این همون چیزیه که برای یه اسکرول‌بار “مخفی” می‌خوایم!

۳. جاوااسکریپت برای کنترل کامل و پیچیده

در برخی سناریوها، ممکنه نیاز داشته باشی کنترل بیشتری روی اسکرول‌بار داشته باشی؛ مثلاً انیمیشن‌های خاص، یا لغو کامل اسکرول‌بار پیش‌فرض و پیاده‌سازی یک اسکرول‌بار کاملاً سفارشی با HTML و CSS که با جاوااسکریپت کنترل میشه.

این روش معمولاً برای کتابخانه‌های UI پیچیده یا وقتی که نیاز به رفتارهای خیلی خاص و فراتر از قابلیت‌های CSS داری، استفاده میشه. مثلاً کتابخانه‌هایی مثل `Perfect Scrollbar` یا `OverlayScrollbars` همین کار رو انجام می‌دن.

**مزایا:** کنترل کامل، سازگاری بین مرورگرها (چون خودت پیاده‌سازی می‌کنی).
**معایب:** پیچیدگی بیشتر، افزایش حجم کد، احتمالاً نیاز به دانش جاوااسکریپت قوی‌تر، و احتمالاً تأثیر روی پرفورمنس اگه به درستی پیاده نشه.

توصیه: اگه تازه کار رو شروع کردی، سعی کن تا حد امکان با CSS کار رو پیش ببری. استفاده از جاوااسکریپت رو به موارد ضروری و پیشرفته موکول کن. برای اسنیپت‌های جاوااسکریپت، به بخش JS فا تولز مراجعه کن.

طراحی اسکرول‌بار مینیمال و مخفی‌شونده

خب، حالا که ابزارها رو می‌شناسیم، بیایم ببینیم چطور می‌تونیم یه اسکرول‌بار خوشگل و مینیمال طراحی کنیم، یا حتی اونو به شکلی مخفی کنیم که فقط موقع نیاز ظاهر بشه.

ساخت اسکرول‌بار باریک و ناپیدا

برای اینکه اسکرول‌بارت کمتر به چشم بیاد و فضای کمتری رو اشغال کنه، می‌تونی اون رو باریک‌تر و رنگش رو محو‌تر کنی.

کپی کد

/* استایل مینیمال برای مرورگرهای Webkit */
::-webkit-scrollbar {
    width: 4px; /* اسکرول‌بار خیلی باریک */
}

::-webkit-scrollbar-track {
    background: transparent; /* مسیر کاملاً شفاف */
}

::-webkit-scrollbar-thumb {
    background: <span style="color: #9e9e9e; /* رنگ خاکستری ملایم برای انگشتانه */
    border-radius: 2px;
}

::-webkit-scrollbar-thumb:hover {
    background: <span style="color: #616161;
}

/* استایل مینیمال برای Firefox */
body {
    scrollbar-width: thin;
    scrollbar-color: <span style="color: #9e9e9e transparent; /* انگشتانه خاکستری، مسیر شفاف */
}

در این مثال، اسکرول‌بار Webkit رو به عرض 4 پیکسل کاهش دادیم و مسیر رو کاملاً شفاف کردیم. انگشتانه هم یه رنگ خاکستری ملایم داره که فقط موقع نیاز به چشم میاد. برای فایرفاکس هم از `thin` و `transparent` استفاده کردیم.

اسکرول‌بار مخفی‌شونده هنگام عدم فعالیت

یکی از جذاب‌ترین ترفندها اینه که اسکرول‌بار رو کلاً مخفی کنی و فقط وقتی کاربر ماوس رو روی بخش قابل اسکرول می‌بره یا شروع به اسکرول می‌کنه، ظاهر بشه. این کار به طراحی مینیمال و تمیز کمک شایانی می‌کنه.

**رویکرد CSS-Only (برای Webkit):**
می‌تونیم از `opacity` و `transition` همراه با `:hover` استفاده کنیم.

کپی کد

/* استایل مخفی‌شونده برای Webkit */
.scroll-container {
    overflow: auto;
}

.scroll-container::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: transparent; /* مسیر اسکرول‌بار مخفی */
}

.scroll-container::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2); /* انگشتانه نیمه‌شفاف */
    border-radius: 4px;
    opacity: 0; /* انگشتانه در حالت عادی مخفی */
    transition: opacity 0.3s ease-in-out; /* انیمیشن برای ظاهر شدن */
}

/* وقتی ماوس روی کانتینر اسکرول‌دار می‌ره */
.scroll-container:hover::-webkit-scrollbar-thumb {
    opacity: 1; /* انگشتانه ظاهر میشه */
}

/* برای فایرفاکس (مخفی کامل، بدون ظاهر شدن با هاور CSS-only) */
.scroll-container-firefox-hidden {
    scrollbar-width: none; /* اسکرول‌بار رو کاملاً مخفی می‌کنه */
}

تذکر: مخفی کردن کامل اسکرول‌بار در فایرفاکس با scrollbar-width: none; فعلاً راهی برای ظاهر کردنش با هاور فقط با CSS نداره. برای این کار باید از جاوااسکریپت کمک بگیری.

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

مقایسه روش‌های استایل‌دهی به اسکرول‌بار

برای اینکه بهتر متوجه تفاوت‌ها و کاربرد هر روش بشی، یه جدول مقایسه‌ای ساده آماده کردم:

ویژگی Webkit (Chrome, Edge, Safari) Firefox
روش استایل‌دهی شبه‌عناصر (::-webkit-scrollbar و غیره) ویژگی‌های CSS (scrollbar-width, scrollbar-color)
سطح کنترل بالا (کنترل کامل روی عرض، رنگ، شعاع، پس‌زمینه) متوسط (فقط عرض و رنگ کلی)
پشتیبانی مرورگر کروم، اج، سافاری، اوپرا فایرفاکس
قابلیت مخفی‌کردن با هاور (فقط CSS) بله (با استفاده از opacity و transition) خیر (مخفی کامل با none، برای هاور نیاز به JS)
مخفی‌سازی کامل با width: 0px و height: 0px با scrollbar-width: none

نکات کلیدی برای ریسپانسیو بودن و UX بهتر

حالا که یاد گرفتیم چطور اسکرول‌بار رو استایل‌دهی کنیم، خیلی مهمه که چند تا نکته رو در نظر بگیریم تا مطمئن بشیم کارمون هم روی موبایل و تبلت و هم روی لپتاپ و حتی تلوزیون واکنش‌گراء (Responsive) و کاربردی باشه.

۱. ریسپانسیو بودن با Media Queries

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

کپی کد

/* استایل پیش‌فرض برای دسکتاپ (مینیمال) */
body::-webkit-scrollbar {
    width: 6px;
}
body::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.3);
}
body {
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,0.3) transparent;
}

/* برای صفحه‌نمایش‌های کوچک‌تر از 768 پیکسل (موبایل و تبلت) */
@media (max-width: 768px) {
    body::-webkit-scrollbar {
        width: 12px; /* اسکرول‌بار پهن‌تر برای راحتی بیشتر */
    }
    body::-webkit-scrollbar-thumb {
        background-color: rgba(0,0,0,0.5); /* رنگ پررنگ‌تر */
    }
    body {
        scrollbar-width: auto; /* بازگشت به حالت عادی یا پهن‌تر */
        scrollbar-color: rgba(0,0,0,0.5) rgba(0,0,0,0.1);
    }
}

این رویکرد تضمین می‌کنه که اسکرول‌بارت روی هر دستگاهی به بهترین شکل ممکن نمایش داده بشه. اگه دنبال اسنیپت‌های CSS مربوط به ریسپانسیو کردن سایتت هستی، یه سر به اسنیپت‌های CSS بزن.

۲. دسترسی‌پذیری (Accessibility)

مخفی کردن یا بیش از حد باریک کردن اسکرول‌بار می‌تونه برای کاربرانی که با ماوس دقیق کار نمی‌کنن یا اختلالات حرکتی دارن، مشکل‌ساز باشه. همیشه یه تعادل بین زیبایی و کاربرد برقرار کن.
* **حداقل عرض:** اسکرول‌بار رو خیلی باریک نکن. یه حداقل عرض ۸ تا ۱۲ پیکسل معمولاً خوبه.
* **نمایان بودن:** اطمینان حاصل کن که اسکرول‌بار همیشه به یه نحوی نمایان هست یا به راحتی قابل فعال شدن باشه. اگه کاملاً مخفیش می‌کنی، حتماً یه گزینه جایگزین برای اسکرول (مثل دکمه‌های ناوبری) یا یه راهنمای بصری فراهم کن.

۳. عملکرد (Performance)

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

عیب‌یابی سریع: مشکلات رایج و راه‌حل‌ها

ممکنه موقع استایل‌دهی به اسکرول‌بار با چند تا مشکل رایج روبرو بشی. بیا چند مورد از اونا رو بررسی کنیم و راه‌حل‌های سریعشون رو با هم ببینیم:

❌ مشکل ۱: استایل اسکرول‌بار اعمال نمی‌شه!

علت احتمالی: شایع‌ترین دلیل اینه که عنصر مورد نظرت قابلیت اسکرول نداره. یعنی یا محتواش از کانتینرش بزرگتر نیست، یا ویژگی overflow به درستی تنظیم نشده.

✅ راه‌حل: مطمئن شو که:

  • محتوای داخل عنصر از ابعاد آن بزرگتر است.
  • ویژگی overflow: scroll; یا overflow: auto; برای عنصر یا body اعمال شده باشد. (overflow: hidden; اسکرول‌بار را کلاً حذف می‌کند)
  • از پیشوندهای صحیح برای مرورگرهای مختلف استفاده کرده باشی (مثلاً ::-webkit-scrollbar برای کروم و scrollbar-width برای فایرفاکس).

❌ مشکل ۲: اسکرول‌بار در مرورگرهای مختلف متفاوت به نظر می‌رسه.

علت احتمالی: مرورگرها از موتورهای رندرینگ و استانداردهای متفاوتی برای اسکرول‌بار استفاده می‌کنن.

✅ راه‌حل:

  • برای پوشش Webkit (کروم، اج، سافاری)، از شبه‌عناصر ::-webkit-scrollbar استفاده کن.
  • برای Firefox، از ویژگی‌های scrollbar-width و scrollbar-color استفاده کن.
  • در صورت نیاز به سازگاری کامل، یک راه‌حل مبتنی بر جاوااسکریپت (مانند کتابخانه‌های اشاره شده) را در نظر بگیر.

❌ مشکل ۳: اسکرول‌بار مخفی شد، اما کاربر نمی‌تونه محتوا رو اسکرول کنه یا پیدا کردن اسکرول‌بار سخته.

علت احتمالی: مشکل دسترسی‌پذیری یا تجربه کاربری نامناسب در پیاده‌سازی اسکرول‌بار مخفی.

✅ راه‌حل:

  • اطمینان حاصل کن که overflow: scroll یا overflow: auto هنوز فعال است و تنها اسکرول‌بار به صورت بصری مخفی شده.
  • اگر از رویکرد opacity: 0; و :hover استفاده می‌کنی، مطمئن شو که transition مناسبی اعمال کرده‌ای تا کاربر متوجه تغییر شود.
  • برای محتوای مهم، شاید بهتر باشد اسکرول‌بار را کاملاً مخفی نکنی و حداقل یک اسکرول‌بار باریک و مینیمال اما همیشه قابل مشاهده داشته باشی.
  • به یاد داشته باش که ویژگی scrollbar-width: none; در فایرفاکس اسکرول‌بار را کاملاً حذف می‌کند، اما overflow: auto; هنوز محتوا را قابل اسکرول نگه می‌دارد.

سخن پایانی و دعوت به عمل

استایل‌دهی به اسکرول‌بار، هرچند یک جزئیات به نظر میرسه، اما می‌تونه تأثیر بزرگی روی کیفیت کلی و حس و حال وبسایتت داشته باشه. با استفاده از روش‌های CSS که معرفی کردیم، می‌تونی اسکرول‌بارهایی طراحی کنی که کاملاً با ظاهر و تجربه کاربری مورد نظرت هم‌خوانی دارن؛ از مینیمال و باریک گرفته تا کاملاً مخفی‌شونده. همیشه تعادل بین زیبایی و کاربرد رو در نظر داشته باش تا همه کاربران، چه اونایی که با موس کار می‌کنن و چه اونایی که از تاچ‌پد یا تاچ استفاده می‌کنن، تجربه خوبی داشته باشن.

یادت باشه، دنیای وب همیشه در حال تغیبر و به‌روزرسانی هست. اگه دنبال کدهای آماده، اسنیپت‌های جدید و ابزارهای کاربردی برای کارهای برنامه‌نویسی هستی، حتماً یه سر به فا تولز (FA-Tools) بزن. اونجا کلی منبع ارزشمند برای توسعه‌دهندگان وب، پایتون، وردپرس و … پیدا می‌کنی که می‌تونه سرعت و کیفیت کارتو چند برابر کنه!

❓ سوالات متداول (FAQ)

۱. آیا استایل‌دهی به اسکرول‌بار با CSS روی همه مرورگرها کار می‌کنه؟

خیر، مرورگرهای مختلف از روش‌های متفاوتی پشتیبانی می‌کنند. برای مرورگرهای مبتنی بر کرومیوم (کروم، اج، سافاری) از ::-webkit-scrollbar و برای فایرفاکس از scrollbar-width و scrollbar-color استفاده می‌شود.

۲. چطور می‌تونم اسکرول‌بار رو کاملاً مخفی کنم؟

برای Webkit می‌تونی width و height اسکرول‌بار رو روی 0px تنظیم کنی، یا opacity رو به 0 برسونی. برای فایرفاکس از scrollbar-width: none; استفاده کن.

۳. آیا مخفی کردن اسکرول‌بار برای دسترسی‌پذیری مشکلی ایجاد می‌کنه؟

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

۴. آیا می‌تونم اسکرول‌بار رو طوری طراحی کنم که فقط وقتی ماوس روش می‌ره ظاهر بشه؟

بله، برای مرورگرهای Webkit می‌تونی از ویژگی opacity: 0; برای ::-webkit-scrollbar-thumb و سپس از .container:hover::-webkit-scrollbar-thumb { opacity: 1; } استفاده کنی تا با هاور ظاهر بشه. برای فایرفاکس نیاز به کمی جاوااسکریپت خواهی داشت.

“`html

ترفندهای استایل‌دهی به اسکرول‌بار (Custom Scrollbar) با ظاهر مینیمال و مخفی‌شونده

سلام رفیق برنامه‌نویس! تا حالا شده از اون اسکرول‌بارهای پیش‌فرض و بی‌روح مرورگرت خسته بشی و دلت بخواد یه چیزی خوشگل‌تر، مینیمال‌تر یا حتی کلاً نامرئی داشته باشی؟ خب، امروز اومدیم تا دقیقاً همین کارو با هم انجام بدیم. استایل‌دهی به اسکرول‌بار نه تنها می‌تونه تجربه کاربری سایتت رو حسابی ارتقا بده، بلکه به زیبایی و یکپارچگی طراحی UI/UX هم کمک شایانی می‌کنه. بیا دست‌به‌کار بشیم و نشون بدیم که حتی یه جزء کوچیک مثل اسکرول‌بار هم می‌تونه کلی حرف برای گفتن داشته باشه.

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


کلیک کن و ببین چه خبره: فا تولز

برای هر سوال یا نیاز فوری هم می‌تونی با ما تماس بگیری: 09202232789

🗺️ نقشه راه: چطور اسکرول‌بار رو زیبا کنیم؟

1️⃣ چرا سفارشی‌سازی؟

  • ✨ بهبود تجربه کاربری
  • 🎨 یکپارچگی با طراحی
  • 🛠️ حل مشکلات بصری

2️⃣ ابزارهای اصلی

  • 🌐 Webkit (Chrome, Edge, Safari)
  • 🦊 Firefox (scrollbar-width, scrollbar-color)
  • 💡 جاوااسکریپت (کامل‌ترین کنترل)

3️⃣ طراحی مینیمال و مخفی

  • 📏 باریک و نامحسوس
  • 👻 مخفی‌شونده روی هاور
  • 💨 حذف کامل (در صورت لزوم)

4️⃣ نکات پیشرفته

  • 📱 ریسپانسیو بودن
  • ♿ دسترسی‌پذیری
  • ⚡ بهبود عملکرد
  • 🔍 عیب‌یابی مشکلات

چرا اصلا باید اسکرول‌بار رو دستکاری کنیم؟

شاید بپرسی خب، اسکرول‌بار همون اسکرول‌باره دیگه، چرا باید وقت بذاریم و استایلش رو عوض کنیم؟ جواب خیلی ساده‌ست: تجربه کاربری (UX) و زیبایی‌شناسی. اسکرول‌بارهای پیش‌فرض مرورگرها معمولاً خاکستری، پهن و گاهی اوقات واقعاً ناجورن. وقتی یه طراحی زیبا و مینیمال برای وبسایتت پیاده کردی، وجود یه اسکرول‌بار زمخت و بی‌روح می‌تونه کل زحماتت رو زیر سوال ببره.

تصور کن یه وبسایت با طراحی مدرن و رنگ‌های خاص داری؛ حالا یهو یه اسکرول‌بار قدیمی و آبی‌رنگ موروثی از ویندوز ۹۸ می‌بینی! این دیگه فاجعه‌ست! سفارشی‌سازی اسکرول‌بار به ما اجازه می‌ده تا:

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

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

روش‌های اصلی استایل‌دهی به اسکرول‌بار

قبل از اینکه بریم سراغ کدهای جالب، باید بدونیم که استایل‌دهی به اسکرول‌بار توی همه مرورگرها به یه شکل نیست. متأسفانه، استانداردهای جهانی CSS برای این کار هنوز اونقدر که باید فراگیر نشدن و مجبوریم از رویکردهای مختلفی استفاده کنیم.

۱. استفاده از Webkit برای مرورگرهای مبتنی بر کرومیوم (Chrome, Edge, Safari)

اکثر کاربران اینترنت امروزه از مرورگرهایی مثل کروم، اج (نسخه‌های جدید)، و سافاری استفاده می‌کنن که همگی بر پایه موتور رندرینگ Webkit هستند. این مرورگرها از یک سری شبه‌عنصر (pseudo-elements) خاص برای استایل‌دهی به اسکرول‌بار پشتیبانی می‌کنن. این روش، قوی‌ترین و رایج‌ترین راه برای کاستومایز کردن اسکرول‌باره.

شبه‌عناصر اصلی که باید باهاشون کار کنیم این‌ها هستند:

  • ::-webkit-scrollbar: کل نوار اسکرول‌بار (تراکم).
  • ::-webkit-scrollbar-track: پس‌زمینه اسکرول‌بار که انگشتانه (thumb) روی اون حرکت می‌کنه.
  • ::-webkit-scrollbar-thumb: انگشتانه یا همون بخشی که کاربر باهاش اسکرول می‌کنه.
  • ::-webkit-scrollbar-corner: گوشه‌ای که در تقاطع اسکرول‌بار افقی و عمودی قرار می‌گیره.

بیا یه نمونه کد رو با هم ببینیم تا قضیه برات روشن‌تر بشه:

کپی کد

/* استایل‌دهی به کل اسکرول‌بار */
::-webkit-scrollbar {
    width: 8px; /* عرض اسکرول‌بار عمودی */
    height: 8px; /* ارتفاع اسکرول‌بار افقی */
}

/* استایل‌دهی به Track (مسیر حرکت) اسکرول‌بار */
::-webkit-scrollbar-track {
    background: #f1f1f1; /* رنگ پس‌زمینه مسیر */
    border-radius: 10px;
}

/* استایل‌دهی به Thumb (انگشتانه) اسکرول‌بار */
::-webkit-scrollbar-thumb {
    background: #888; /* رنگ انگشتانه */
    border-radius: 10px;
}

/* تغییر رنگ انگشتانه هنگام هاور */
::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* برای یک اسکرول‌بار خاص (مثلاً در یک دیو) */
.my-custom-div::-webkit-scrollbar {
    width: 6px;
}

.my-custom-div::-webkit-scrollbar-thumb {
    background: <span style="color: #607d8b;
}

.my-custom-div::-webkit-scrollbar-track {
    background: <span style="color: #eceff1;
}

نکته: این استایل‌ها رو می‌تونی برای body کل صفحه یا برای هر عنصر خاصی که overflow: scroll یا overflow: auto داره اعمال کنی.

برای جزئیات بیشتر و اسنیپت‌های CSS آماده، حتماً یه سری به بخش اسنیپت‌های CSS فا تولز بزن. اونجا کلی کد مفید و کاربردی برای کارهای مختلف پیدا می‌کنی!

۲. استفاده از استایل‌های Firefox با scrollbar-width و scrollbar-color

فایرفاکس (Firefox) رویکرد متفاوتی برای استایل‌دهی به اسکرول‌بار داره. به جای شبه‌عناصر Webkit، از ویژگی‌های CSS استانداردتر مثل scrollbar-width و scrollbar-color استفاده می‌کنه. خبر خوب اینه که این ویژگی‌ها در مسیر استاندارد شدن در W3C هستند، پس در آینده ممکنه کاربرد بیشتری پیدا کنن.

  • scrollbar-width: عرض اسکرول‌بار رو تعیین می‌کنه. مقادیرش می‌تونن auto (پیش‌فرض مرورگر)، thin (باریک) یا none (مخفی) باشن.
  • scrollbar-color: رنگ انگشتانه و مسیر اسکرول‌بار رو به ترتیب تعیین می‌کنه.
کپی کد

/* برای کل صفحه */
body {
    scrollbar-width: thin; /* اسکرول‌بار باریک */
    scrollbar-color: #888 #f1f1f1; /* رنگ انگشتانه و بعدش رنگ مسیر */
}

/* برای مخفی کردن کامل اسکرول‌بار در فایرفاکس */
.hidden-scrollbar-firefox {
    scrollbar-width: none;
}

نکته: ویژگی scrollbar-width: none; در فایرفاکس باعث میشه اسکرول‌بار کاملاً ناپدید بشه، اما قابلیت اسکرول همچنان وجود داره. این همون چیزیه که برای یه اسکرول‌بار “مخفی” می‌خوایم!

۳. جاوااسکریپت برای کنترل کامل و پیچیده

در برخی سناریوها، ممکنه نیاز داشته باشی کنترل بیشتری روی اسکرول‌بار داشته باشی؛ مثلاً انیمیشن‌های خاص، یا لغو کامل اسکرول‌بار پیش‌فرض و پیاده‌سازی یک اسکرول‌بار کاملاً سفارشی با HTML و CSS که با جاوااسکریپت کنترل میشه.

این روش معمولاً برای کتابخانه‌های UI پیچیده یا وقتی که نیاز به رفتارهای خیلی خاص و فراتر از قابلیت‌های CSS داری، استفاده میشه. مثلاً کتابخانه‌هایی مثل Perfect Scrollbar یا OverlayScrollbars همین کار رو انجام می‌دن.

مزایا: کنترل کامل، سازگاری بین مرورگرها (چون خودت پیاده‌سازی می‌کنی).

معایب: پیچیدگی بیشتر، افزایش حجم کد، احتمالاً نیاز به دانش جاوااسکریپت قوی‌تر، و احتمالاً تأثیر روی پرفورمنس اگه به درستی پیاده نشه.

توصیه: اگه تازه کار رو شروع کردی، سعی کن تا حد امکان با CSS کار رو پیش ببری. استفاده از جاوااسکریپت رو به موارد ضروری و پیشرفته موکول کن. برای اسنیپت‌های جاوااسکریپت، به بخش JS فا تولز مراجعه کن.

طراحی اسکرول‌بار مینیمال و مخفی‌شونده

خب، حالا که ابزارها رو می‌شناسیم، بیایم ببینیم چطور می‌تونیم یه اسکرول‌بار خوشگل و مینیمال طراحی کنیم، یا حتی اونو به شکلی مخفی کنیم که فقط موقع نیاز ظاهر بشه.

ساخت اسکرول‌بار باریک و ناپیدا

برای اینکه اسکرول‌بارت کمتر به چشم بیاد و فضای کمتری رو اشغال کنه، می‌تونی اون رو باریک‌تر و رنگش رو محو‌تر کنی.

کپی کد

/* استایل مینیمال برای مرورگرهای Webkit */
::-webkit-scrollbar {
    width: 4px; /* اسکرول‌بار خیلی باریک */
}

::-webkit-scrollbar-track {
    background: transparent; /* مسیر کاملاً شفاف */
}

::-webkit-scrollbar-thumb {
    background: <span style="color: #9e9e9e; /* رنگ خاکستری ملایم برای انگشتانه */
    border-radius: 2px;
}

::-webkit-scrollbar-thumb:hover {
    background: <span style="color: #616161;
}

/* استایل مینیمال برای Firefox */
body {
    scrollbar-width: thin;
    scrollbar-color: <span style="color: #9e9e9e transparent; /* انگشتانه خاکستری، مسیر شفاف */
}

در این مثال، اسکرول‌بار Webkit رو به عرض 4 پیکسل کاهش دادیم و مسیر رو کاملاً شفاف کردیم. انگشتانه هم یه رنگ خاکستری ملایم داره که فقط موقع نیاز به چشم میاد. برای فایرفاکس هم از thin و transparent استفاده کردیم.

اسکرول‌بار مخفی‌شونده هنگام عدم فعالیت

یکی از جذاب‌ترین ترفندها اینه که اسکرول‌بار رو کلاً مخفی کنی و فقط وقتی کاربر ماوس رو روی بخش قابل اسکرول می‌بره یا شروع به اسکرول می‌کنه، ظاهر بشه. این کار به طراحی مینیمال و تمیز کمک شایانی می‌کنه.

رویکرد CSS-Only (برای Webkit):

می‌تونیم از opacity و transition همراه با :hover استفاده کنیم.

کپی کد

/* استایل مخفی‌شونده برای Webkit */
.scroll-container {
    overflow: auto;
}

.scroll-container::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: transparent; /* مسیر اسکرول‌بار مخفی */
}

.scroll-container::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2); /* انگشتانه نیمه‌شفاف */
    border-radius: 4px;
    opacity: 0; /* انگشتانه در حالت عادی مخفی */
    transition: opacity 0.3s ease-in-out; /* انیمیشن برای ظاهر شدن */
}

/* وقتی ماوس روی کانتینر اسکرول‌دار می‌ره */
.scroll-container:hover::-webkit-scrollbar-thumb {
    opacity: 1; /* انگشتانه ظاهر میشه */
}

/* برای فایرفاکس (مخفی کامل، بدون ظاهر شدن با هاور CSS-only) */
.scroll-container-firefox-hidden {
    scrollbar-width: none; /* اسکرول‌بار رو کاملاً مخفی می‌کنه */
}

تذکر: مخفی کردن کامل اسکرول‌بار در فایرفاکس با scrollbar-width: none; فعلاً راهی برای ظاهر کردنش با هاور فقط با CSS نداره. برای این کار باید از جاوااسکریپت کمک بگیری.

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

مقایسه روش‌های استایل‌دهی به اسکرول‌بار

برای اینکه بهتر متوجه تفاوت‌ها و کاربرد هر روش بشی، یه جدول مقایسه‌ای ساده آماده کردم:

ویژگی Webkit (Chrome, Edge, Safari) Firefox
روش استایل‌دهی شبه‌عناصر (::-webkit-scrollbar و غیره) ویژگی‌های CSS (scrollbar-width, scrollbar-color)
سطح کنترل بالا (کنترل کامل روی عرض، رنگ، شعاع، پس‌زمینه) متوسط (فقط عرض و رنگ کلی)
پشتیبانی مرورگر کروم، اج، سافاری، اوپرا فایرفاکس
قابلیت مخفی‌کردن با هاور (فقط CSS) بله (با استفاده از opacity و transition) خیر (مخفی کامل با none، برای هاور نیاز به JS)
مخفی‌سازی کامل با width: 0px و height: 0px با scrollbar-width: none

نکات کلیدی برای ریسپانسیو بودن و UX بهتر

حالا که یاد گرفتیم چطور اسکرول‌بار رو استایل‌دهی کنیم، خیلی مهمه که چند تا نکته رو در نظر بگیریم تا مطمئن بشیم کارمون هم روی موبایل و تبلت و هم روی لپتاپ و حتی تلوزیون واکنش‌گراء (Responsive) و کاربردی باشه.

۱. ریسپانسیو بودن با Media Queries

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

کپی کد

/* استایل پیش‌فرض برای دسکتاپ (مینیمال) */
body::-webkit-scrollbar {
    width: 6px;
}
body::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.3);
}
body {
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,0.3) transparent;
}

/* برای صفحه‌نمایش‌های کوچک‌تر از 768 پیکسل (موبایل و تبلت) */
@media (max-width: 768px) {
    body::-webkit-scrollbar {
        width: 12px; /* اسکرول‌بار پهن‌تر برای راحتی بیشتر */
    }
    body::-webkit-scrollbar-thumb {
        background-color: rgba(0,0,0,0.5); /* رنگ پررنگ‌تر */
    }
    body {
        scrollbar-width: auto; /* بازگشت به حالت عادی یا پهن‌تر */
        scrollbar-color: rgba(0,0,0,0.5) rgba(0,0,0,0.1);
    }
}

این رویکرد تضمین می‌کنه که اسکرول‌بارت روی هر دستگاهی به بهترین شکل ممکن نمایش داده بشه. اگه دنبال اسنیپت‌های CSS مربوط به ریسپانسیو کردن سایتت هستی، یه سر به اسنیپت‌های CSS بزن.

۲. دسترسی‌پذیری (Accessibility)

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

  • حداقل عرض: اسکرول‌بار رو خیلی باریک نکن. یه حداقل عرض ۸ تا ۱۲ پیکسل معمولاً خوبه.
  • نمایان بودن: اطمینان حاصل کن که اسکرول‌بار همیشه به یه نحوی نمایان هست یا به راحتی قابل فعال شدن باشه. اگه کاملاً مخفیش می‌کنی، حتماً یه گزینه جایگزین برای اسکرول (مثل دکمه‌های ناوبری) یا یه راهنمای بصری فراهم کن.

۳. عملکرد (Performance)

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

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

عیب‌یابی سریع: مشکلات رایج و راه‌حل‌ها

ممکنه موقع استایل‌دهی به اسکرول‌بار با چند تا مشکل رایج روبرو بشی. بیا چند مورد از اونا رو بررسی کنیم و راه‌حل‌های سریعشون رو با هم ببینیم:

❌ مشکل ۱: استایل اسکرول‌بار اعمال نمی‌شه!

علت احتمالی: شایع‌ترین دلیل اینه که عنصر مورد نظرت قابلیت اسکرول نداره. یعنی یا محتواش از کانتینرش بزرگتر نیست، یا ویژگی overflow به درستی تنظیم نشده.

✅ راه‌حل: مطمئن شو که:

  • محتوای داخل عنصر از ابعاد آن بزرگتر است.
  • ویژگی overflow: scroll; یا overflow: auto; برای عنصر یا body اعمال شده باشد. (overflow: hidden; اسکرول‌بار را کلاً حذف می‌کند)
  • از پیشوندهای صحیح برای مرورگرهای مختلف استفاده کرده باشی (مثلاً ::-webkit-scrollbar برای کروم و scrollbar-width برای فایرفاکس).

❌ مشکل ۲: اسکرول‌بار در مرورگرهای مختلف متفاوت به نظر می‌رسه.

علت احتمالی: مرورگرها از موتورهای رندرینگ و استانداردهای متفاوتی برای اسکرول‌بار استفاده می‌کنن.

✅ راه‌حل:

  • برای پوشش Webkit (کروم، اج، سافاری)، از شبه‌عناصر ::-webkit-scrollbar استفاده کن.
  • برای Firefox، از ویژگی‌های scrollbar-width و scrollbar-color استفاده کن.
  • در صورت نیاز به سازگاری کامل، یک راه‌حل مبتنی بر جاوااسکریپت (مانند کتابخانه‌های اشاره شده) را در نظر بگیر.

❌ مشکل ۳: اسکرول‌بار مخفی شد، اما کاربر نمی‌تونه محتوا رو اسکرول کنه یا پیدا کردن اسکرول‌بار سخته.

علت احتمالی: مشکل دسترسی‌پذیری یا تجربه کاربری نامناسب در پیاده‌سازی اسکرول‌بار مخفی.

✅ راه‌حل:

  • اطمینان حاصل کن که overflow: scroll یا overflow: auto هنوز فعال است و تنها اسکرول‌بار به صورت بصری مخفی شده.
  • اگر از رویکرد opacity: 0; و :hover استفاده می‌کنی، مطمئن شو که transition مناسبی اعمال کرده‌ای تا کاربر متوجه تغییر شود.
  • برای محتوای مهم، شاید بهتر باشد اسکرول‌بار را کاملاً مخفی نکنی و حداقل یک اسکرول‌بار باریک و مینیمال اما همیشه قابل مشاهده داشته باشی.
  • به یاد داشته باش که ویژگی scrollbar-width: none; در فایرفاکس اسکرول‌بار را کاملاً حذف می‌کند، اما overflow: auto; هنوز محتوا را قابل اسکرول نگه می‌دارد.

سخن پایانی و دعوت به عمل

استایل‌دهی به اسکرول‌بار، هرچند یک جزئیات به نظر میرسه، اما می‌تونه تأثیر بزرگی روی کیفیت کلی و حس و حال وبسایتت داشته باشه. با استفاده از روش‌های CSS که معرفی کردیم، می‌تونی اسکرول‌بارهایی طراحی کنی که کاملاً با ظاهر و تجربه کاربری مورد نظرت هم‌خوانی دارن؛ از مینیمال و باریک گرفته تا کاملاً مخفی‌شونده. همیشه تعادل بین زیبایی و کاربرد رو در نظر داشته باش تا همه کاربران، چه اونایی که با موس کار می‌کنن و چه اونایی که از تاچ‌پد یا تاچ استفاده می‌کنن، تجربه خوبی داشته باشن.

یادت باشه، دنیای وب همیشه در حال تغیبر و به‌روزرسانی هست. اگه دنبال کدهای آماده، اسنیپت‌های جدید و ابزارهای کاربردی برای کارهای برنامه‌نویسی هستی، حتماً یه سر به فا تولز (FA-Tools) بزن. اونجا کلی منبع ارزشمند برای توسعه‌دهندگان وب، پایتون، وردپرس و … پیدا می‌کنی که می‌تونه سرعت و کیفیت کارتو چند برابر کنه!

❓ سوالات متداول (FAQ)

۱. آیا استایل‌دهی به اسکرول‌بار با CSS روی همه مرورگرها کار می‌کنه؟

خیر، مرورگرهای مختلف از روش‌های متفاوتی پشتیبانی می‌کنند. برای مرورگرهای مبتنی بر کرومیوم (کروم، اج، سافاری) از ::-webkit-scrollbar و برای فایرفاکس از scrollbar-width و scrollbar-color استفاده می‌شود.

۲. چطور می‌تونم اسکرول‌بار رو کاملاً مخفی کنم؟

برای Webkit می‌تونی width و height اسکرول‌بار رو روی 0px تنظیم کنی، یا opacity رو به 0 برسونی. برای فایرفاکس از scrollbar-width: none; استفاده کن.

۳. آیا مخفی کردن اسکرول‌بار برای دسترسی‌پذیری مشکلی ایجاد می‌کنه؟

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

۴. آیا می‌تونم اسکرول‌بار رو طوری طراحی کنم که فقط وقتی ماوس روش می‌ره ظاهر بشه؟

بله، برای مرورگرهای Webkit می‌تونی از ویژگی opacity: 0; برای ::-webkit-scrollbar-thumb و سپس از .container:hover::-webkit-scrollbar-thumb { opacity: 1; } استفاده کنی تا با هاور ظاهر بشه. برای فایرفاکس نیاز به کمی جاوااسکریپت خواهی داشت.

“`

Table of Contents

آخرین نوشته‌ها