Firefox 64 додана підтримка специфікації проекту CSS Scrollbars Module Level 1 , який додає два нових властивості з scrollbar-width
і scrollbar-color
які дають певний контроль над тим, як відображаються смуги прокрутки.
Ви можете встановити scrollbar-color
одне з наступних значень (описи з MDN):
auto
Відображення платформи за замовчуванням для частини треку смуги прокрутки, за відсутності будь-яких інших властивостей кольору смуги прокрутки.
dark
Покажіть темну смугу прокрутки, яка може бути або темним варіантом смуги прокрутки, що надається платформою, або власною смугою прокрутки з темними кольорами.
light
Покажіть легку смугу прокрутки, яка може бути або легким варіантом смуги прокрутки, що надається платформою, або власною смугою прокрутки зі світлими кольорами.
<color>
<color>
Перший колір застосовує до великого пальця прокрутки, другий - до доріжки прокрутки.
Зауважте, що dark
і light
значення наразі не реалізовані у Firefox .
нотатки macOS:
Напівпрозорі панелі прокрутки, які автоматично переховуються, які є типовими для macOS, не можуть бути забарвлені цим правилом (вони все одно вибирають свій контрастний колір залежно від фону). Кольоровими є лише постійно показані смуги прокрутки (Налаштування системи> Показати смуги прокрутки> Завжди).
Візуальна демонстрація:
.scroll {
width: 20%;
height: 100px;
border: 1px solid grey;
overflow: scroll;
display: inline-block;
}
.scroll-color-auto {
scrollbar-color: auto;
}
.scroll-color-dark {
scrollbar-color: dark;
}
.scroll-color-light {
scrollbar-color: light;
}
.scroll-color-colors {
scrollbar-color: orange lightyellow;
}
<div class="scroll scroll-color-auto">
<p>auto</p><p>auto</p><p>auto</p><p>auto</p><p>auto</p><p>auto</p>
</div>
<div class="scroll scroll-color-dark">
<p>dark</p><p>dark</p><p>dark</p><p>dark</p><p>dark</p><p>dark</p>
</div>
<div class="scroll scroll-color-light">
<p>light</p><p>light</p><p>light</p><p>light</p><p>light</p><p>light</p>
</div>
<div class="scroll scroll-color-colors">
<p>colors</p><p>colors</p><p>colors</p><p>colors</p><p>colors</p><p>colors</p>
</div>
Ви можете встановити scrollbar-width
одне з наступних значень (описи з MDN):
auto
Ширина смуги прокрутки за замовчуванням для платформи.
thin
Варіант ширини тонкої смуги прокрутки на платформах, які надають цю опцію, або тонший смуги прокрутки, ніж ширина смуги прокрутки платформи за замовчуванням.
none
Не відображається смуга прокрутки, однак елемент все одно буде прокручуватися.
Ви також можете встановити значення конкретної довжини відповідно до специфікації. І thin
довжина, і конкретна довжина можуть нічого не робити на всіх платформах, і те, що саме вона робить, залежить від платформи. Зокрема, схоже, що Firefox наразі не підтримує певну величину довжини ( цей коментар щодо їх помилки про помилку, схоже, підтверджує це ). thin
Keywork дійсно , здається, добре підтримується , проте, з MacOS і підтримки Windows , в- крайней мере.
Напевно, варто відзначити, що параметр значення довжини та все scrollbar-width
майно розглядаються для видалення в майбутньому чернеті, і якщо це станеться, це властивість може бути видалено з Firefox у наступній версії.
Візуальна демонстрація:
.scroll {
width: 30%;
height: 100px;
border: 1px solid grey;
overflow: scroll;
display: inline-block;
}
.scroll-width-auto {
scrollbar-width: auto;
}
.scroll-width-thin {
scrollbar-width: thin;
}
.scroll-width-none {
scrollbar-width: none;
}
<div class="scroll scroll-width-auto">
<p>auto</p><p>auto</p><p>auto</p><p>auto</p><p>auto</p><p>auto</p>
</div>
<div class="scroll scroll-width-thin">
<p>thin</p><p>thin</p><p>thin</p><p>thin</p><p>thin</p><p>thin</p>
</div>
<div class="scroll scroll-width-none">
<p>none</p><p>none</p><p>none</p><p>none</p><p>none</p><p>none</p>
</div>