Problème pour faire défiler tbody sur IE 9 (tbody hauteur = hauteur de la ligne)
Désolé pour mon mauvais anglais, j'espère que vous allez comprendre ce que je veux dire...
Je suis en train de mettre en œuvre un tableau HTML qui charge le défilement de la table des organismes indépendamment de l'en-tête du tableau.
J'ai trouvé la question suivante qui m'a beaucoup aidé :
Comment faire défiler la table "tbody" indépendant "thead"?
J'ai testé le code suivant, il fonctionne sur Chrome (22), Firefox (16) et l'Opéra (12) sans problème :
HTML :
<table>
<thead>
<tr>
<th>Title1</th>
<th>Title2</th>
<!-- ... -->
</tr>
</thead>
<tbody>
<tr>
<td>...</td>
<td>...</td>
<!-- ... -->
</tr>
<!-- ... -->
</tbody>
</table>
CSS :
thead, tbody {
display: block;
}
tbody {
height:500px;
overflow-y:auto;
overflow-x:hidden;
}
thead {
line-height: 20px;
}
De sorte qu'il fonctionne sur les principaux navigateurs sauf IE 9, sur IE, j'ai quelques questions :
- La tbody la hauteur n'est pas définie (donc je n'ai pas de barre de défilement)
- Chacun a une hauteur de 500px (la tbody de la hauteur sur les autres navigateurs)
Les deux exemples suivants ont exactement les mêmes questions : http://jsfiddle.net/nyCKE/2/ , http://www.imaputz.com/cssStuff/bigFourVersion.html
J'ai vu la question suivante (et la réponse), mais il ne m'aide pas : IE9 + css : problème fixe avec en-tête de tableau
Donc je suis sûr que le bug vient de IE mais je n'ai aucune idée de comment résoudre ce problème sans changer ma structure HTML.
Avoir quelqu'un à une idée ?
OriginalL'auteur Dorian | 2012-10-11
Vous devez vous connecter pour publier un commentaire.
J'ai légèrement essayé de le réparer. Espérons qu'il donne une certaine idée
HTML
CSS
Démo http://jsfiddle.net/nyCKE/272/
<p>
sur<th>
est visible lorsque nous défiler. Mais j'ai de voir le style de mon<th>
trop (parce que j'utilisetableSorter
plugin), j'ai donc mis leabsolute
valeur sur mon<th>
directement, et j'ai mis monleft
propriété CSS avec une fonction jQuery. Il n'est pas parfait (car il utilise Javascript et je pense qu'il ne fonctionne pas sansborder-collapse:collapse
), mais il fonctionne sur IE, j'espère que ce bug sera corrigé bientôt.OriginalL'auteur Sowmya
Voici une brève réponse qui vous permet de faire défiler la table avec un en-tête fixe dans ie9.
Ajouter une condition div autour de la table
Ajouter les styles suivants pour ie9
Vous aurez à régler les hauteurs, et probablement d'autres propriétés basé sur votre table.
OriginalL'auteur ykay