Problèmes avec les tables de données et la barre de défilement horizontale indésirable
J'espère que c'est un problème assez simple.
J'essaie d'utiliser Datatables pour créer une table sans aucun défilement horizontal. La table contient de longues lignes de données que je dois conserver sur une seule ligne et masquer le débordement.
Il semble qu'il me manque quelque chose d'assez basique avec les tables de données ici, mais je n'arrive pas à me débarrasser de la barre de défilement horizontale lorsque la table obtient une barre de défilement verticale.
http://jsfiddle.net/FBpLA/3/
Il y a deux tables (données identiques), les deux sont initialisées très simplement.
$('#mytable').dataTable({
bFilter: false,
bInfo: false,
bPaginate: false,
});
$('#mytable2').dataTable({
bFilter: false,
bInfo: false,
bPaginate: false,
sScrollY: '150px'
});
Les styles de la page sont assez simples
body {
height:100%;
color: #000000;
font-family: Helvetica, Arial, Verdana, sans-serif;
font-size: 10pt;
background-color: #B4D4EC;
}
.main-panel {
display:block;
background:white;
padding:20px;
height: 100%;
position:absolute;
width: 700px;
top: 139px;
bottom: 110px;
}
th {
text-align:left;
}
td {
border-spacing:0;
white-space:nowrap;
overflow: hidden;
text-overflow: ellipsis;
-ms-text-overflow:ellipsis;
}
Solution du problème
Au final, la meilleure solution était de définir la largeur de la table intérieure à :
table-layout:fixed;
width: 98%!important;
Toutes les solutions répertoriées ici avaient un comportement de recadrage indésirable. Limiter la largeur du tableau de cette manière m'a également permis d'ajuster dynamiquement la hauteur du tableau de sorte que la barre de défilement horizontale puisse apparaître ou disparaître à la demande sans introduire de défilement horizontal.
http://jsfiddle.net/FBpLA/15/
Commentaires
Enregistrer un commentaire