2009-12-26 71 views
7

我有TD這樣的:陣背景顏色在打印預覽中不可見

<td align="left" bgcolor="#FF0000"> 

在瀏覽器中,是應用了紅色的背景色,但是當我看到這個打印預覽,沒有紅色在背景中。字體顏色也是白色的,但打印預覽時也會轉換爲白色。

任何人都知道可以是什麼原因?

感謝

回答

4

的背景色印刷是由每個瀏覽器不同的支持,它往往是默認關閉的。例如,在Safari中,它是名爲「打印背景」的打印對話框中的一個選項。我不確定該選項在其他瀏覽器中的位置。

0

如果可以,請嘗試使用CSS,並且如果背景不適用於打印版本,請指定打印css文檔。

<link rel="stylesheet" rev="stylesheet" href="style.css" type="text/css" media="all" /> <link rel="stylesheet" rev="stylesheet" href="print.css" type="text/css" media="print" />

基本CSS這裏:

td{ background-color:#FF0000; }

+0

正如@ doug-neiner所提到的,這不適用於所有瀏覽器,只是做CSS不會工作 – 2010-06-10 21:58:33

+0

我沒有看到@doug-neiner對CSS的任何提及。 OP在打印時也詢問字體顏色。你標記了這個? – Gazzer 2010-06-11 11:21:50

+0

這不起作用。打印時,Chrome和FF都忽略CSS背景顏色。 – 2013-02-23 18:35:14

12

爲了使WebKit瀏覽器(Safari瀏覽器,谷歌瀏覽器)打印背景圖像或顏色,你應該在以下css樣式添加到元素:

-webkit-print-color-adjust: exact; 
+0

作品完美,謝謝Marco! – 2013-01-17 08:02:08

3

我剛剛遇到這個問題,我自己相信我有一個解決方案。本來我這有一個H1標籤,但然後使用相同的代碼爲TD

h1 { 
    background-color:#404040; 
    background-image:url("img/404040.png"); 
    background-repeat:repeat; 
    box-shadow: inset 0 0 0 1000px #404040; 
    border:30px solid #404040; 
    height:0; 
    width:100%; 
    color:#FFFFFF !important; 
    margin:0 -20px; 
    line-height:0px; 
} 

這裏有幾件事情要注意:

  • 背景顏色是絕對的後備和是有後人大多。
  • background-image使用#404040製作成PNG的1px x 1px像素。如果用戶啓用了圖像,它可能會工作,如果沒有...
  • 設置箱子陰影,如果這不起作用...
  • Border = 1/2您希望的高度和/或框的寬度,堅實,顏色。在上面的例子中,我想要一個60px高度的框。
  • 取決於您在邊界屬性中控制的內容,將高/寬度清零。
  • 字體顏色將默認爲黑色,除非您使用!重要
  • 將行高設置爲0可以修改不具有物理尺寸的方框。
  • 製作和舉辦自己的該死的PNG;)

見我fiddle進行更詳細的演示。