【问题标题】:Printing out functionally hidden elements打印出功能隐藏的元素
【发布时间】:2018-05-23 16:03:43
【问题描述】:

一旦页面像这样加载,我将在后面使用 c# 隐藏我的表格:

FreqTable.Rows[0].Cells[0].Visible = false;
FreqTable.HeaderRow.Cells[0].Visible = false;

一旦按下打印按钮,我就会使用 javascript 启动打印功能:

window.print();

我设置了打印媒体的 CSS,使其可见(运气不好,似乎 css 被忽略了),并尝试在单击按钮后使表格可见。有一个小的“但是”我不希望它在单击打印按钮后显示在我的屏幕上。

这里有什么方法可以打印隐藏的元素而不显示在屏幕上?

【问题讨论】:

  • 你需要使用媒体查询:stackoverflow.com/questions/44626069/…
  • 请再读一遍问题
  • 媒体查询隐藏元素,但会将其发送到打印机
  • 我使用 chrome 我可以看到文档的输出
  • 查看下面的答案 (Giacomo De Liberali) - 使用媒体查询

标签: c# css asp.net printing hidden


【解决方案1】:

您可以分配给您只想打印以下print-only类的元素

.print-only {
    display: none;
}

@media print {
    .print-only{
        display: block;
    }
}

【讨论】:

  • 删除答案请不正确
  • @whiterabbitj 我明白这个答案也是正确的,也许你应该换个问题,以避免误解。
  • 答案不正确再次阅读问题很清楚我什至提到媒体查询被忽略或什么没有
  • @whiterabbitj 我不确定你是否知道,但你的写作方式非常粗鲁和不友好。考虑到有人试图解决您的问题,这当然不合适
  • 不,不是。在我看来,对我的问题发布一个明显的“解决方案”是粗鲁的。它只会误导来查看帖子的人,因为问题似乎已“回答”@LonelyNeuron
【解决方案2】:

通过在 c# 中的 print 函数之后显示元素并使用在元素显示后调用的 JavaScript 函数隐藏它来解决它。

这样一来,什么都不会显示,但是一旦我在打印媒体中设置了可见性,我仍然可以打印出元素。

这将是解决这个问题的正确方法,而不是一些 css 媒体查询......

【讨论】:

    猜你喜欢
    • 2011-01-22
    • 1970-01-01
    • 2016-04-26
    • 2017-01-27
    • 2010-09-26
    • 1970-01-01
    • 2011-03-04
    • 2016-03-16
    相关资源
    最近更新 更多