430 votes

Barre de défilement CSS personnalisée pour Firefox

Je souhaite personnaliser une barre de défilement à l'aide de CSS.

J'utilise ce code CSS WebKit, qui fonctionne bien pour Safari et Chrome :

::-webkit-scrollbar {
  width: 15px;
  height: 15px;
}

::-webkit-scrollbar-track-piece {
  background-color: #c2d2e4;
}

::-webkit-scrollbar-thumb:vertical {
  height: 30px;
  background-color: #0a4c95;
}

Comment puis-je faire la même chose dans Firefox ?

Je sais que je peux facilement le faire en utilisant jQuery, mais je préférerais le faire avec du CSS pur si c'est possible.

1 votes

Veuillez nous expliquer comment vous pouvez le faire en utilisant jQuery. Je suis confronté au même problème mais j'ai utilisé CSS pour le résoudre pour Webkit. Cependant, Firefox pose un problème que votre solution jQuery pourrait résoudre.

1 votes

Je recommande d'utiliser le plugin jQuery jscrollpane.

0 votes

Il y a un problème avec jScrollPane dans Firefox. jScrollPane fonctionne parfaitement dans Chrome mais dans Firefox vous avez une fenêtre vide. système barre de défilement à droite de la barre de défilement du jScrollPane. Il ne doit y avoir qu'une seule barre de défilement

2voto

Firefox n'accepte que :

scrollbar-color: #F8F8F8 // Add your color
scroll-bar-width: thin/auto/none

2voto

nativelectronic Points 71

2021

Firefox

.nav{
scrollbar-width: 0px;
scrollbar-width: none;}

Chrome

::-webkit-scrollbar {
  height: 0;  /* Remove scrollbar space */
  background: transparent;  
/* Optional: just make scrollbar invisible */
}

pour les barres de défilement verticales et horizontales, modifier l'attribut width ou height

2voto

La réponse est courte :

Uniquement le(s) travail(s) suivant(s)

dans firefox (à partir de JAN 2022) :

propriété (pas de pseudo-élément !)

valeurs autorisées

scrollbar-width

thin (en fait très mince)

auto (version standard épaisse)

none (masque la barre de défilement)

scrollbar-color

color color

Vous devez définir les deux valeurs de couleur, première barre de défilement pouce , deuxièmement l'arrière-plan de la barre de défilement . Il prend n'importe quelle valeur de couleur normale En effet, il utilise des noms comme "black", des valeurs hexagonales comme "#000000", des fonctions comme "rgb(0,0,0) ainsi que des variables comme "var(--previouslydefinedblack)". MAIS il ne prend pas en compte les gradients linéaires en entrée, ni normalement, ni via une variable css. L'ordre des propriétés n'a d'ailleurs aucune importance.

0voto

Jadam Points 57

Cela fonctionne sur Wordpress Guys Custom CSS

/* Fire-Fox Scrollbar */
:root{
  scrollbar-face-color: rgb(176, 88, 54); /* Firefox 63 compatibility */
  scrollbar-track-color: rgb(51, 62, 72); /* Firefox 63 compatibility */
  scrollbar-color: rgb(176, 88, 54) rgb(51, 62, 72);
  scrollbar-width: auto;
}

Réf : https://github.com/Aris-t2/CustomCSSforFx/issues/160

0voto

ipirlo Points 75

Cela fonctionne dans le style utilisateur, mais ne semble pas fonctionner dans les pages web. Je n'ai pas trouvé de directives officielles de Mozilla à ce sujet. Bien que cela ait pu fonctionner à un moment donné, Firefox n'a pas de support officiel pour cela. Ce bogue est toujours ouvert https://bugzilla.mozilla.org/show_bug.cgi?id=77790

scrollbar {
/*  clear useragent default style*/
   -moz-appearance: none !important;
}
/* buttons at two ends */
scrollbarbutton {
   -moz-appearance: none !important;
}
/* the sliding part*/
thumb{
   -moz-appearance: none !important;
}
scrollcorner {
   -moz-appearance: none !important;
   resize:both;
}
/* vertical or horizontal */
scrollbar[orient="vertical"] {
    color:silver;
}

vérifier http://codemug.com/html/custom-scrollbars-using-css/ pour plus de détails.

2 votes

J'ai essayé la même chose que vous, mais cela ne fonctionne pas dans FF. jsfiddle.net/gGbkY/1 Ai-je oublié quelque chose ?

0 votes

Cela fonctionne dans le style utilisateur, mais ne semble pas fonctionner dans les pages web. Je n'ai pas trouvé de directives officielles de Mozilla à ce sujet.

1 votes

Veuillez vérifier le même lien : il ne fonctionne plus

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X