9
votes

J'ai besoin de supprimer la barre de défilement horizontale sur un débordement

J'ai défini une étiquette avec un attribut CSS "Overflow" défini sur "Scroll". Cela me donne à la fois les barres de défilement verticales et horizontales. Je veux seulement la barre de défilement verticale. Que dois-je faire?

css

0 commentaires

5 Réponses :


4
votes
overflow:auto;

1 commentaires

À l'électeur Down ... Veuillez fournir un commentaire sur la raison pour laquelle vous avez voté.



6
votes

Essayez d'utiliser " Overflow-y: Scroll; " à la place. C'est CSS3, mais aussi loin que je sache, il est soutenu par tous les navigateurs modernes (IE6 +, FF, Opera, Chrome / Safari / Webkit /, etc.).

Une explication rapide des différents Overflow / -x / -Y valeurs, pour ceux qui ne sont pas familiers avec eux:

  • visible - la valeur par défaut. Contenu qui ne convient pas à "déborder" la case, apparaissant généralement sur un contenu adjacent.
  • caché - contenu qui ne correspond pas est "guillotiné" - coupé sur les bords de la boîte.
  • auto - contenu qui ne correspond pas aux causes d'une barre de défilement à apparaître. Ne provoque pas nécessairement que les deux barres de défilement apparaissent à la fois; Si le contenu convient horizontalement mais pas verticalement, seule une barre de défilement verticale apparaîtra.
  • défilement - similaire à auto , mais la ou les barres de défilement apparaissent si nécessaire ou non. AFAIK, principalement utilisé pour empêcher le contenu centré de "sauter" si une barre de défilement doit être ajoutée au contenu dynamique (par exemple Ajax).

4 commentaires

J'ai vu un navigateur qui ne supporte pas débordement-x, débordement-y, mais je ne me souviens pas qui. Probablement une ancienne version de Firefox ou de l'opéra ou quelque chose d'idiot comme ça, cette solution est donc une bonne aussi. La seule chose est, avec trop de défilement, la barre de défilement verticale sera toujours là même si elle n'est pas nécessaire.


@ZOIDBERG - IIRC, FF2 et Opera 9 Soutenez-le, donc un navigateur plus ancien serait ma supposition. Et de la question initiale, j'attends une barre de défilement «toujours sur le» étant exactement ce qu'il veut. Bien sûr, cela fonctionne parfaitement avec auto , masqué ou visible , aussi.


@Ben Blank Ouais, en fonction de sa question, cela ressemble à cela. Je suppose que ma réponse est partielle pour ne pas montrer la barre de défilement si ce n'est pas nécessaire parce que je déteste les barres de défilement. Ma question est pourquoi n'a-t-il pas accepté votre réponse?


@ZOIDBERG - J'essaie peut-être d'encourager un autre utilisateur à faible représentant? Tant qu'il a aidé, cependant, tout est bon. :-)



12
votes

Vous pouvez essayer d'utiliser le

overflow-y: auto;


0 commentaires

2
votes

Je me rends compte que c'est une très vieille question, mais je suis tombé à travers elle aujourd'hui. Si, comme moi, vous ne voulez que la barre de défilement Y et seulement quand elle est nécessaire, j'ai trouvé ces travaux: xxx

acclamations, marque


0 commentaires

1
votes
overflow-x:hidden;
overflow-y:scroll;

0 commentaires