Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

scrollbar-width

Baseline 2024
Nouvellement disponible

Depuis December 2024, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.

La propriété CSS scrollbar-width permet aux auteur·ice·s de définir l'épaisseur souhaitée des barres de défilement d'un élément lorsqu'elles sont affichées.

L'objectif de la propriété scrollbar-width est d'optimiser l'espace occupé par la barre de défilement sur une page ou un élément ; cet objectif n'est pas lié à l'esthétique de la barre de défilement. Les valeurs prédéfinies de scrollbar-width indiquent à l'agent utilisateur si une barre de défilement normale ou plus fine doit être rendue. Évitez d'utiliser none, car masquer une barre de défilement a un impact négatif sur l'accessibilité.

Note : Pour les éléments qui ne sont défilables que par des moyens programmatiques et non par une interaction directe de l'utilisateur·ice, utilisez la propriété overflow avec une valeur de hidden plutôt que scrollbar-width: none.

Syntaxe

css
/* Valeurs avec un mot-clé */
scrollbar-width: auto;
scrollbar-width: thin;
scrollbar-width: none;

/* Valeurs globales */
scrollbar-width: inherit;
scrollbar-width: initial;
scrollbar-width: revert;
scrollbar-width: revert-layer;
scrollbar-width: unset;

Valeurs

auto

La largeur par défaut de la barre de défilement pour la plateforme.

thin

Une variante plus fine de la barre de défilement sur les plateformes qui offrent cette option, ou une barre de défilement plus fine que la largeur par défaut de la plateforme.

none

Aucune barre de défilement n'est affichée, mais l'élément reste défilable.

Note : Les agents utilisateur doivent appliquer toute valeur de scrollbar-width définie sur l'élément racine à la zone d'affichage (viewport en anglais).

Accessibilité

Utilisez cette propriété avec prudence — définir scrollbar-width sur thin ou none peut rendre le contenu difficile ou impossible à faire défiler si l'auteur·ice ne fournit pas de mécanisme de défilement alternatif. Bien que les gestes de balayage ou les roues de souris puissent permettre de faire défiler ce contenu, certains appareils n'ont pas d'alternative de défilement.

Le critère WCAG 2.1.1 (Clavier) existe depuis longtemps pour conseiller sur l'accessibilité de base au clavier, et cela devrait inclure le défilement des zones de contenu. Introduit dans WCAG 2.1, le critère 2.5.5 (Taille de la cible) conseille que les cibles tactiles doivent avoir au moins 44px de largeur et de hauteur (bien que le problème soit amplifié sur les écrans haute résolution ; des tests approfondis sont recommandés).

Définition formelle

Valeur initialeauto
Applicabilitéboîtes défilantes
Héritéenon
Valeur calculéecomme défini
Type d'animationdiscrète

Syntaxe formelle

scrollbar-width = 
auto |
thin |
none

Exemples

Redimensionner les barres de défilement

CSS

css
.scroller {
  width: 300px;
  height: 100px;
  overflow-y: scroll;
  scrollbar-width: thin;
}

HTML

html
<div class="scroller">
  Veggies es bonus vobis, proinde vos postulo essum magis kohlrabi welsh onion
  daikon amaranth tatsoi tomatillo melon azuki bean garlic. Gumbo beet greens
  corn soko endive gumbo gourd. Parsley shallot courgette tatsoi pea sprouts
  fava bean collard greens dandelion okra wakame tomato. Dandelion cucumber
  earthnut pea peanut soko zucchini.
</div>

Résultat

Spécifications

Spécification
CSS Scrollbars Styling Module Level 1
# scrollbar-width

Compatibilité des navigateurs

Voir aussi