gpt4 book ai didi

javascript - @media 打印 css 打印时不格式化表格

转载 作者:行者123 更新时间:2023-11-28 07:07:20 28 4
gpt4 key购买 nike

我有一个简单的表格,表格下方有一个按钮。这是我的 jsp 的正文部分,如下所示:

<div id="myDivForPrint">
<table class="t1">
<tbody>
<tr>
<th>One</th>
<th>Two</th>
<th>Three</th>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
</tbody>
</table>
</div>
<button onclick="printDiv()">Print</button>

下面是带有@media 规则的CSS,它应该格式化表格。 CSS 在我的 jsp 的 head 部分:

    @media print,screen{
table.t1 {
margin: 1em auto;
border-collapse: collapse;
font-family: Arial, Helvetica, sans-serif;
}

.t1 th, .t1 td {
padding: 4px 8px;
}

.t1 thead th {
background: #4f81bd;
text-transform: lowercase;
text-align: left;
font-size: 15px;
color: #fff;
}

.t1 tr {
border-right: 1px solid #95b3d7;
}

.t1 tbody tr {
border-bottom: 1px solid #95b3d7;
}

.t1 tbody tr:nth-child(odd) {
background: #dbe5f0;
}

.t1 tbody th, .t1 tbody tr:nth-child(even) td {
border-right: 1px solid #95b3d7;
}

.t1 tfoot th {
background: #4f81bd;
text-align: left;
font-weight: normal;
font-size: 10px;
color: #fff;
}

.t1 tr *:nth-child(3), .t1 tr *:nth-child(4) {
text-align: right;
}
}
</style>

下面是打印包含我的表格的 div 的 javascript 函数。它在我的 jsp 的正文部分:

<script type="text/javascript">
function printDiv()
{
var divToPrint=document.getElementById("myDivForPrint");
newWin= window.open("");
newWin.document.write(divToPrint.outerHTML);
newWin.document.close();
newWin.document.focus();
newWin.print();
newWin.close();
}

</script>

页面在屏幕上的格式很好。但是,当我单击打印按钮并将页面打印为 xps 文档时,所有 CSS 格式都丢失了,只打印了表格的内容,这看起来非常糟糕。

我做错了什么?我正在使用 IE8,我无法移动到其他浏览器或更新版本的 IE。

最佳答案

您可以在样式表中为屏幕和打印媒体使用不同的样式,即

@media screen
{
table.test {
font-family:"Times New Roman",Georgia;
font-size:10px;
// more
}
}

@media print
{
table.test {
font-family:Verdana, Arial;
font-size:10px;
// more
}
}

当您打印表格时,只会应用打印媒体中定义的样式。

Click This for more

关于javascript - @media 打印 css 打印时不格式化表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32853160/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com