用于打印的CSS隐藏表列

时间:2012-11-30 16:54:50

标签: css html-table

我有表数据,最后一列包含有关该数据的操作的链接。我希望当有人打印页面时,最后一列不可见。

我尝试了以下操作,它在屏幕上工作(看不到最后一列,其余列均匀分布以填充该空间)。

@media print {
  table td:last-child {display:none}
}

但它不能用于打印:我没有看到列,但是它有空的空间。

3 个答案:

答案 0 :(得分:13)

这对我有用:

   @media print {
       table td:last-child {display:none}
       table th:last-child {display:none}
   }

答案 1 :(得分:1)

有一种更通用的解决方案可以应用于许多不同的元素。使用以下命令创建print.css文件:

.noprint {
display: none;
}

答案 2 :(得分:0)

Table Screen Shot

打印按钮代码

function PrintData()
{
        var divToPrint1 = document.getElementById("editable");
        var divToPrint = divToPrint1;
        divToPrint.border = 1;
        divToPrint.cellSpacing = 0;
        divToPrint.cellPadding = 2;
        divToPrint.style.borderCollapse = 'collapse';

       newWin = window.open();
       newWin.document.write(getHeader());
       newWin.document.write("<h3 align='center'>Master Designation List </h3>");
      $('tr').children().eq(3).hide();
      $('table tr').find('td:eq(3)').hide();
      newWin.document.write(divToPrint.outerHTML);
      newWin.print();
      $('tr').children().eq(3).show();
      $('table tr').find('td:eq(3)').show();
      newWin.close();
}