28173 sujets

CSS et mise en forme, CSS3

Bonjour à tous!

J'ai un problème qui peut être n'en est pas un je vous explique.
Il y a 2 version d'un même formulaire, une en tableau fait pas quelqu'un d'autre, et une faite par moi, en CSS.

Il y a un bouton sur la page qui permet de reloader la page sans les boutons et les menu, en fait, il s'agit d'un appercu avant impression.
Le tableau fonctionne avec des pourcentages et lorsqu'on l'imprime, tout rentre dans la page.
Pour ma part, mon CSS fonctionne avec des pixels. Quand je le fais imprimer, il dépasse des 2 côté de la feuille ce qui fait qu'il manque des sections. Mon "tableau" css fait 800px de large. Le vrai tableau est en % mais il dépasse de beaucoup la largeur de mon CSS à l'écran...

Donc ce que j'aimerais savoir, y a t-il une propriété CSS qui permet de "resizer" un DIV afin qu'il s'imprime dans une page? Par exemple, comme dans word lorsqu'on coche "Faire fitté dans une page".

Sinon, quel serait mes solution? Mettre de pourcentage dans mes divs? rapetisser mon tableau par essaie et erreur? Autres suggestion?

Merci d'avance!

Jaff
Bonsoir,

Le "fitté dans une page", c'est le fit-to-width natif dans Opera et bientôt dans IE7. Mais d'autres navigateurs n'en sont pas encore là.

La solution est une simple CSS de media "print", qui peut très bien se passer de javascript, et qui redimentionnera ton tableau à ton gré en pt, en en % ou en cm. Attention: elle ne gèrera pas, au niveau du navigateur, les page-break dans le tableau (ce n'est pas implémenté). En revanche, elle gèrera très bien les largeurs.

Voir les articles openWeb sur le media print et celui sur les types de media CSS (pour actualiser les premiers), ainsi que http://blog-and-blues.org/weblog/2004/11/24/346 (vers la fin)
Modifié par Laurent Denis (02 Aug 2006 - 22:11)
Bonjour,

La seule solution que j'ai pu trouver afin de gérer les pages break, c'est de travailler en tableau et encore cette solution ne fonctionne vraiment que pour IE.
Sinon il reste le pdf qui peut être parfait, mais c'est encore une autre histoire.