Salut à tous,
mon problème est le suivant : J'affiche un tableau, d'une hauteur de plusieurs centaines de lignes.
Je voudrais qu'a l'impression, les cellules "header" du tableau (<th></th> ) appairaissent en haut de chaque page.
Vous voyez un moyen de faire cela ?
Publicité
Posté le 29-08-2005 à 10:00:51
boulax
Inserer phrase hype en anglais
Posté le 29-08-2005 à 10:19:15
Propriétés de ta CSS d'impression... De mémoire table-header-group ou un truc dans le genre...
---------------
Posté depuis des chiottes, sales. Me gusta.
El_gringo
Posté le 29-08-2005 à 10:28:44
Je comptais bien sur un truc dans le genre. Je vais chercher du côté de table-header-group
La suite dans quelques instants
(et merci pour l'indice, boulax)
boulax
Inserer phrase hype en anglais
Posté le 29-08-2005 à 10:35:51
il faut que tu définisses un <thead></thead> dans le <tbody></tbody> de ton <table></table> (et pourquoi pas un <tfoot></tfoot> )
---------------
Posté depuis des chiottes, sales. Me gusta.
El_gringo
Posté le 29-08-2005 à 10:39:54
Ouais, + ou moins ce que je viens de voir. Car en HTML (ou XHTML), la propriété CSS display:table-header-group est automatiquement appliquée aux éléments thead.
El_gringo
Posté le 29-08-2005 à 10:40:26
ha, pourquoi pas de tfoot ? Simplement parce que je n'ai pas de footer !
Message édité par El_gringo le 29-08-2005 à 10:40:40
boulax
Inserer phrase hype en anglais
Posté le 29-08-2005 à 10:41:42
---------------
Posté depuis des chiottes, sales. Me gusta.
El_gringo
Posté le 29-08-2005 à 10:47:43
le <thead></thead> ne doit pas être DANS le body. C'est un élément de meme niveau. On aura donc :
Citation :
<table>
<thead>
<!--rangées du tableau-->
</thead>
<tfoot>
<!--rangées du tableau-->
</tfoot>
<tbody>
<!--rangées du tableau-->
</tbody>
</table>
Qui fonctionne parfaitement sous firefox, mais pas du tout sous IE !
boulax
Inserer phrase hype en anglais
Posté le 29-08-2005 à 10:50:49
Ouais bien sur, excuse
Par contre le footer devrait etre apres le body non ?
---------------
Posté depuis des chiottes, sales. Me gusta.
El_gringo
Posté le 29-08-2005 à 10:54:37
Non non, l'ordre à utiliser, c'est celui-là.
Mais c'est pas ça le problème. Le problème c'est que ça n'fonctionne pas avec IE
Publicité
Posté le 29-08-2005 à 10:54:37
boulax
Inserer phrase hype en anglais
Posté le 29-08-2005 à 11:08:59
Bah ptetre que ca gene pas mais en toute logique c'est d'abord l'entete, puis le corps et enfin le pied de tableau quoi . Pour IE t'en fais pas, c'est toujours pareil...
---------------
Posté depuis des chiottes, sales. Me gusta.
El_gringo
Posté le 29-08-2005 à 11:20:32
J'y peux rien moi. Parle en au W3C si tu trouves qu'ils ont mal normalisé
Pour IE, le fait que ça soit toujours pareil, ça résoud pas mon problème. Je veux évidemment rester compatible IE ...
El_gringo
Posté le 29-08-2005 à 16:38:38
Bon, pour info, j'ai trouvé. Il suffit d'appliquer explicitement display: table-header-group;
aux éléments de type thead (sur le media="print" )
Apparement, sous firefox, ce style est appliqué par défaut. sous IE, non.
Bah ptetre que ca gene pas mais en toute logique c'est d'abord l'entete, puis le corps et enfin le pied de tableau quoi . Pour IE t'en fais pas, c'est toujours pareil...
En toute logique, t'attend donc d'avoir tout imprimé pour savoir ce qu'il faut rajouter en bas de chaque page. Ca serait pas un peu trop tard?
boulax
Inserer phrase hype en anglais
Posté le 30-08-2005 à 15:10:02
kékidi
Moi je fais rien c'est mon ordinateur qui dit à l'imprimante quoi faire
Qu'on mette le pied de page avant ou apres le corps, si c'est autorisé alors il sait faire avec hein
C'est juste que je trouve ça structurellement plus clair de le mettre après le corps du tableau quoi (Après la façon dont c'est imprimé c'est l'affaire de la feuille de style du média impression )
---------------
Posté depuis des chiottes, sales. Me gusta.