2009-12-26 6 views
7

Tôi đã td như thế này:TDs màu nền không hiển thị trong xem trước khi in

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

Trong trình duyệt, có một màu nền đỏ áp dụng cho nó nhưng khi tôi nhìn thấy xem trước khi in này, không có màu đỏ trong nền. cũng là màu phông chữ là màu trắng nhưng nó cũng được chuyển thành màu trắng khi in xem trước nó.

Bất kỳ ai biết điều gì có thể là lý do?

Cảm ơn

Trả lời

4

Việc in màu nền được hỗ trợ khác nhau theo từng trình duyệt và thường được tắt theo mặc định. Ví dụ, trong Safari, nó là một tùy chọn trong hộp thoại in được gọi là "In nền". Tôi không chắc chắn nơi tùy chọn nằm trong các trình duyệt khác.

0

Hãy thử sử dụng CSS nếu bạn có thể và nếu nền không hoạt động với phiên bản in chỉ định tài liệu css in.

<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" />

Basic CSS ở đây:

td{ background-color:#FF0000; }

+0

Như đã đề cập bởi @ doug-neiner điều này không hoạt động trên tất cả các trình duyệt, chỉ cần làm CSS sẽ không hoạt động –

+0

Tôi không thấy bất kỳ đề cập đến CSS bởi @ doug-neiner. OP cũng hỏi về màu chữ khi in. Bạn đã đánh dấu mục này? – Gazzer

+0

Điều này không hoạt động. Cả Chrome và FF đều bỏ qua màu nền CSS khi in. –

12

Để làm cho trình duyệt WebKit (Safari, Google Chrome) in hình nền hoặc màu bạn nên thêm phong cách css sau vào phần tử:

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

Hoạt động hoàn hảo, Cảm ơn Marco! –

3

Tôi vừa tự mình gặp vấn đề này và tin rằng mình có giải pháp. Tôi ban đầu đã làm điều này với một thẻ H1 nhưng sau đó sử dụng cùng mã cho một 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; 
} 

Dưới đây là một vài điều cần lưu ý:

  • background-color là dự phòng tuyệt đối và có cho hậu thế chủ yếu.
  • hình nền sử dụng pixel 1px x 1px của # 404040 được tạo thành PNG. Nếu người dùng đã bật hình ảnh có thể hoạt động, nếu không ...
  • Đặt hộp bóng, nếu nó không hoạt động ...
  • Border = 1/2 chiều cao và/hoặc chiều rộng mong muốn của bạn , rắn, màu. Trong ví dụ trên tôi muốn có một hộp chiều cao 60px.
  • Zero ra khỏi chiều cao/chiều rộng tùy thuộc vào những gì bạn đang kiểm soát trong thuộc tính border.
  • Màu phông chữ sẽ mặc định thành màu đen trừ khi bạn sử dụng! Quan trọng
  • Đặt chiều cao dòng thành 0 để sửa cho hộp không có thứ nguyên vật lý.
  • Hãy đăng cai và PNG chết tiệt của riêng bạn;)

Xem fiddle của tôi cho một cuộc biểu tình chi tiết hơn.