[css] background-image ne s'imprime pas sous IE

Eléphant du PHP | 254 Messages

11 avr. 2006, 11:48

bonjour à tous
Je fais une feuille de style pour imprimer un document.php.
Je ne comprends pas pourquoi sous FF l'image de fond s'affiche, alors que sous IE elle ne s'affiche pas.
voici le code :

Code : Tout sélectionner

#centrechk { background-color:#ffffff; width:700px; height: auto; background-image: url(../img/cadeau_2.jpg); background-repeat: no-repeat; background-position: center 640px; padding-bottom: 5px; background-attachment: fixed; }
J'ai essayé de me documenter, je ne comprends pas cette différence...
Merci de votre aide !!! :)

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 avr. 2006, 11:59

Le souci vient de ton 640px dans background-position

Code : Tout sélectionner

background-position: center 640px;
Si tu mets center tout seul il le centrera par rapport à la fenêtre c'est ce que tu veux non ?

Code : Tout sélectionner

#centrechk { background-color:#ffffff; width:700px; height: auto; background-image: url(../img/cadeau_2.jpg); background-repeat: no-repeat; background-position: center; padding-bottom: 5px; background-attachment: fixed; }

Mammouth du PHP | 19672 Messages

11 avr. 2006, 12:02

IE ne respecte pas les standards sur ce point, mais vérifie dans les paramètres de configuration de l'impression sous IE si ce n'est pas là que ça pourrait s'ajuster : le problème, c'est que tu ne pourras pas corriger ce problème sur le navigateur de l'internaute :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

11 avr. 2006, 12:14

Merci à tous les deux
Non, même en enlevant les pixels pour la position verticale, ça ne change pas le pb.
Je crois que Cyrano a raison, c IE qui bloque, car sous FF, ça passe bien.
Comme je voulais que du texte soit positionné sur l'image, c'est la raison pour laquelle que j'ai mise en background...Normalement est destiné à l'administrateur du site, donc moi...mais si je veux étendre son utilisation, là ça bloque effectivement...:-?
Ce texte est créé dynamiquement et donc je ne peux "coller" de balises php dessus :lol:
Peut-être utiliser une DIV ?

Mammouth du PHP | 19672 Messages

11 avr. 2006, 12:23

Effectivement, tu pourrais utiliser une astuce : avoir un bloc <div> contenant l'image en avant-plan, mais dans la feuille de style pour l'écran, tu la caches (display: none) et dans la feuille de style d'impression, tu l'affiches (display: bloc) et tu la positionnes de façon à ce que le texte sois par dessus. Dans ce cas, ça devrait fonctionner tous navigateurs.

À tester en tous cas :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 avr. 2006, 13:29

Merci à tous les deux
Non, même en enlevant les pixels pour la position verticale, ça ne change pas le pb.
Je crois que Cyrano a raison, c IE qui bloque, car sous FF, ça passe bien.
Comme je voulais que du texte soit positionné sur l'image, c'est la raison pour laquelle que j'ai mise en background...Normalement est destiné à l'administrateur du site, donc moi...mais si je veux étendre son utilisation, là ça bloque effectivement...:-?
Ce texte est créé dynamiquement et donc je ne peux "coller" de balises php dessus :lol:
Peut-être utiliser une DIV ?
perso j'ai utilisé le code sans les pixels...sur IE chez moi je vois bien l'image de fond centrée horizontalement et verticalement.

Invité
Invité n'ayant pas de compte PHPfrance

11 avr. 2006, 14:31

Tu utilises quels paramétrages d'impression...je viens de réessayer, mais rien :-k
Je fais comment d'ailleurs pour paramétrer sous IE ? :lol:
Merci !
Cyrano, j'ai essayé ta méthode, mais sous IE et sous firefox, mes div de texte dynamique ne s'alignent pas de la même manière....grrr parfois c'est trop haut, parfois trop bas.

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 avr. 2006, 14:50

Tu utilises quels paramétrages d'impression...je viens de réessayer, mais rien :-k
Oups oups oups... :roll:

Je n'avais pas titillé sur le "imprimer"...désolé. J'étais resté sur l'affichage web. Bon je te confirme que l'affichage web marche mais pas lors de l'impression...encore désolé.

Eléphant du PHP | 312 Messages

11 avr. 2006, 15:13

Tu n'es pas supposé pouvoir forcer l'utilisateur à imprimer les fonds de tes éléments. A toi de faire en sorte que ces fonds ne soient pas essentiels pour la compréhension de la page (ou fait en sorte que l'utilisateur n'ait pas l'idée d'imprimer la page).