2013-06-05 14 views
19

io sono con alcuni problemi per stampare background-color in Firefox e IE. Per Google Chrome ho trovato il seguente trucco e funziona bene, ma per Firefox e IE non riesco a trovare nulla.stampa background-color in Firefox e IE

//Hack for Google Chrome 
-webkit-print-color-adjust:exact; 

Sono felice se qualcuno può aiutarmi con questo.

+1

Nessuno? Ti prego, ti prego, aiutami la condivisione di questo post ... –

+1

ho aggiunto un hack qui: http://stackoverflow.com/questions/764520/how-do-i-make-firefox-print-a-background-color-style/ 22632508 # 22632508 – timing

+0

Possibile duplicato di [Problemi di stampa CSS @media con background-color;] (http://stackoverflow.com/questions/3893986/css-media-print-issues-with-background-color) –

risposta

3

Per Firefox nella finestra di dialogo Stampa c'è un pulsante Avanzate o Mostra dettagli, se si fa clic su questo, sotto Aspetto ci sono due caselle di controllo. Uno per stampare i colori di sfondo e stampare le immagini di sfondo.

+3

Grazie della risposta , ma ho bisogno di qualcosa che non dipende dall'utente, qualcosa nell'applicazione per stamparlo automaticamente, come l'hack di Google Chrome. –

+0

sfortunatamente, questo non è possibile senza l'interruzione dell'utente. la stampa html è veramente limitata. –

0

Sembra impossibile, come dice Spark, ma a volte è possibile utilizzare bordi larghi come soluzione alternativa (ad es. Div con altezza 0 e bordo di 100 pixel).

0

Se stai facendo in modo che il tuo elemento abbia un'altezza/larghezza fissa, puoi impostarne le dimensioni, inserire un'immagine colorata di 1px (di qualsiasi colore desideri che lo sfondo sia) e farlo riempire lo spazio. Quindi puoi posizionare i tuoi contenuti in modo assoluto.

<div style="position: relative; width: 100px; height: 100px;"> 
    <img src="/images/blue.png" style="width: 100px; height: 100px;"> 
    <div style="position: absolute; top: 0px; left: 0px;"> 
     Hello world 
    </div> 
</div> 

Oppure si potrebbe fare la stessa cosa con un bordo al posto di un'immagine:

<div style="position: relative; width: 100px; height: 100px;"> 
    <div style="width: 0; height: 0; border: 50px solid black;"> 
    <div style="position: absolute; top: 0px; left: 0px;"> 
     Hello world 
    </div> 
</div> 

(idea originale da qui: https://defuse.ca/force-print-background.htm)

1

Per Firefox

color-adjust:exact; 

funzionerà come -webkit-print-color-adjust:exact;

Problemi correlati