211 votes

Ajouter une barre de défilement horizontale à un tableau HTML

Existe-t-il un moyen d'ajouter une barre de défilement horizontale à un tableau HTML ? J'ai besoin qu'il soit défilable à la fois verticalement et horizontalement en fonction de la croissance du tableau, mais je n'arrive pas à faire apparaître l'une ou l'autre des barres de défilement.

416voto

Serge Stroobandt Points 525

Tout d'abord, faites un display: block de votre table

puis, définir overflow-x: à auto .

table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}

Agréable et propre. Pas de formatage superflu.

Voici des exemples plus complexes avec des légendes de tableaux déroulants à partir d'une page de mon site web.

Si les cellules ne remplissent pas tout le tableau, ajoutez le code CSS suivant :

table tbody {
    display: table;
    width: 100%;
}

101voto

notme Points 3853

Avez-vous essayé le CSS overflow propriété ?

overflow: scroll; /* Scrollbar are always visible */
overflow: auto;   /* Scrollbar is displayed as it's needed */

MISE À JOUR
Comme le soulignent d'autres utilisateurs, ce n'est pas suffisant pour ajouter les barres de défilement.
Je vous invite donc à lire les commentaires et les réponses ci-dessous et à leur attribuer un "upvote".

47voto

Colin Morelli Points 6539

Enveloppez le tableau dans un DIV, défini avec le style suivant :

div.wrapper {
  width: 500px;
  height: 500px;
  overflow: auto;
}

35voto

ochomoswill Points 281

Il s'agit d'une amélioration de Serge Stroobandt et fonctionne parfaitement. Elle résout le problème du tableau qui ne remplit pas toute la largeur de la page s'il a moins de colonnes.

<style> 
 .table_wrapper{
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}
</style>

<div class="table_wrapper">
<table>
...
</table>
</div>

25voto

Roger Willcocks Points 739

Utilisez l'attribut CSS " débordement " pour cela.

En bref :

overflow: visible|hidden|scroll|auto|initial|inherit;

par exemple

table {
    overflow: scroll;
}

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