jan
18

Bug d’impression dans Firefox

Impression une seule page

Aujourd’hui j’ai rencontré un problème lors que je souhaitais imprimer une page web dans Firefox (et uniquement dans Firefox).

En effet, celui ci me remplissait seulement la première page et tronquait tout le reste du contenu brutallement.

Après quelques recherches sur le net, j’ai pu me rendre compte que c’est un bug connu de firefox depuis plusieurs années et bizarrement toujours pas corrigé (mais ça le sera dans Firefox 4).

Le problème vient en fait des divs flottantes, iframe ou table avec un long contenu (qui normalement devrait s’afficher sur plusieurs pages).

Après avoir essayé plusieurs solutions trouvées sur le net (mais qui ne marchaient pas dans mon cas)  j’ai enfin trouver mon bonheur avec un hack CSS juste pour mon Firefox dans ma feuille print.css

*{
    margin:0px;
    padding:0px;
}
 
html:not([lang*=""]) * {
   	overflow: visible !important;
}

Attention, le hack UNIQUEMENT pour firefox est important, car si vous vous contentez de mettre l’attribut overflow dans votre CSS sans conditions, IE le prendra en compte et l’impression ne fonctionnera plus (ce sera à son tour de n’imprimer qu’une seule page).

Le !important est aussi OBLIGATOIRE, je ne sais pas pourquoi, mais si on l’enlève, cela ne fonctionne plus (en tout cas dans mon cas)

Je précise bien que c’est pour mon cas, car cela peut aussi venir des éléments en float. Dans ce cas il faut annuler le float en remplacant dans votre fichier CSS vos anciens float par

.maClasse {
   display:none !important;
}

Un autre cas connu est la position de vos éléments. Si vous avez des positions absolues, essayez de les remplacer par des positions relatives.

Voici l’article qui m’a aidé à résoudre mon problème



1 Comment to “Bug d’impression dans Firefox”

  • hop 4 août 2013 à 14 h 19 min

    J’avais le même problème depuis environ deux mois, alors que tout fonctionnait bien auparavant : sur la plupart des sites web, Firefox (pour MacOS X) ne m’imprimait plus que la première page correctement. Problème résolu en tapant « about:config » dans la barre d’adresses, puis « print.macosx.pagesetup-2″ dans le champ « rechercher », et ensuite clic-droit puis « réinitialiser » sur la valeur du paramètre en question. J’espère que ça marchera pour vous aussi.

Poster un commentaire

Edito

Bienvenue sur Mémorandom.

Mémorandom est le blog de 2 développeurs web, Appo et Nico.

Vous y trouverez des informations sur différents domaines touchant de près ou de loin au développement web

Tutoriels Yii Framework

Nos derniers articles

Blogs Dev

Liens

Mots-clefs