jquery:打印出隐藏元素

jquery:打印出隐藏元素,jquery,printing,element,hidden,Jquery,Printing,Element,Hidden,我正在使用jQuery打印元素插件进行打印,但我认为这是一个普遍的css问题: 如何打印出隐藏的元素?(css设置为显示:无;) 尝试时,我只得到一张普通的床单。有什么解决办法吗 谢谢您是否按照DN的建议提供了?使用打印样式表会很好地工作。在打印样式表上,将css规则设置为#element{display:block} 我正在查看,有一个选项overrideElementCSS。这似乎正是你需要的。下面是示例代码: $("#element").printElement(

我正在使用jQuery打印元素插件进行打印,但我认为这是一个普遍的css问题:

如何打印出隐藏的元素?(css设置为显示:无;)

尝试时,我只得到一张普通的床单。有什么解决办法吗


谢谢

您是否按照DN的建议提供了?

使用打印样式表会很好地工作。在打印样式表上,将css规则设置为
#element{display:block}

我正在查看,有一个选项
overrideElementCSS
。这似乎正是你需要的。下面是示例代码:

$("#element").printElement( 

            { 

            overrideElementCSS:[ 

        'thisWillBeTheCSSUsed.css', 

        { href:'thisWillBeTheCSSUsedAsWell.css',media:'print'}] 

            }); 

thiswillbethecsussedaswell.css
替换为打印样式表的路径,该打印样式表具有
#元素{display:block}
规则

请注意jQueryUI使用的

{display:none !important;}

!重要信息
意味着您不能用打印样式表覆盖它,除非您还定义了
!重要信息
(我认为您还必须首先在jQuery内容之前的页面标题中链接到打印样式表)

它似乎只能打印可见的元素。在我的情况下,以下方法奏效了

<div id="to-be-printed" style="position:absolute;z-index:-9999;">
  <%= render :partial => "printed_version"%>
</div>
<div id="to_be_printed_cover" style="position:absolute;z-index:-8999;background-color:white;">
  <script type="text/javascript">
  $( document ).ready(function() {
    $("div#to_be_printed_cover").css({ 
      height: $("div#to_be_printed").height(),
       width: $("div#to_be_printed").width(),
    });
  });
  </script>
</div>

“印刷版”%>
$(文档).ready(函数(){
$(“分区打印封面”).css({
高度:$(“要打印的分区”)。高度(),
宽度:$(“要打印的分区”).width(),
});
});

我保留了主元素(要打印为可见和绝对),并在其顶部保留一个元素以显示为隐藏。

您也可以将元素包装在div中,并应用display:none;到那

        <div style="display: none;">
            <div id="printable-area">
                <h1>Lorem ipsum</h1> 
                <p>Lorem ipsum dolor sit amet</p>
            </div>
        </div>

乱数假文
Lorem ipsum dolor sit amet