Nếu tôi sử dụng lớp Bootstrap table
trên bàn, xem trước bản in không hiển thị màu nền cho tr
.In màu nền bảng HTML bằng Bootstrap
Mã của tôi
<head>
<!-- All Bootstrap's stuff ... -->
<!-- My custom style -->
<style type="text/css">
@media print {
.bg-danger {
background-color: #f2dede !important;
}
}
</style>
</head>
<body>
<div class="bg-danger">
<td>DIV</td>
</div>
<table class="table">
<tr class="bg-danger">
<td>TR 1</td>
</tr>
<tr class="danger">
<td>TR 2</td>
</tr>
<tr style="background-color: #f2dede !important;">
<td>TR 3</td>
</tr>
</table>
</body>
Trên màn hình, tất cả là màu đỏ nhưng khi xem trước chỉ in các yếu tố div
là màu đỏ.
Nếu tôi xóa lớp table
, mọi thứ đều hoạt động (ngoại trừ tôi cần kiểu bảng).
Cấu hình của tôi: IE11 và Windows 7.
Có mẹo nào để in màu nền không?
Lưu ý: Bản sao được chỉ định (CSS @media print issues with background-color;) không phải là vấn đề ở đây, cài đặt của tôi được chọn để in màu nền. Ngoài ra, tôi có thể in màu cho một số yếu tố khác là khác.
Trả lời:
Nhờ comments @Ted, tôi overrided td
phong cách cho table
lớp:
<style type="text/css">
@media print {
.bg-danger {
background-color: #f2dede !important;
}
.table td {
background-color: transparent !important;
}
}
</style>
Cài đặt của tôi IE cho nền in ấn đã được kiểm tra. – JTE
Bootstrap rõ ràng đặt nền thành màu trắng để in - đây là trong CSS của họ: '@media print { .table td, .table th { màu nền: #fff! Quan trọng; } } '. Viết ghi đè của bạn như của họ. – Ted
Ok Tôi không thể trả lời câu hỏi của tôi ngay bây giờ ... Nhưng @Ted giải pháp của bạn hoạt động !! Tôi đã ghi đè '' tr'' nhưng tôi không nghĩ đến '' td''. Cảm ơn !!! Tôi đã thêm '' .table td {background-color: transparent! } '' trong phần '' in''. – JTE