如何修改打印样式表的对象样式?我正在使用jQuery,如果有任何帮助的话。
我基本上想要设置一个对象的css属性,但是该属性仅适用于打印,而不是屏幕。例如$('#myobject').css('background','white','print');
答案 0 :(得分:3)
这个问题有点模糊,所以我不确定我是否正在关注你想要做的事情。 您是否尝试动态修改对象的样式以进行打印?
如果是这样,您可以尝试在头部添加样式,如下所示:
$('head').append('<style type="text/css" media="print">Whatever styles</style>');
答案 1 :(得分:1)
您需要向CSSStyleSheet
添加document.styleSheets
并将media
类型设置为print
。 https://developer.mozilla.org/en/DOM/stylesheet
答案 2 :(得分:0)
我认为唯一的方法是在元素上设置一个特殊的ID或类,然后在打印样式表中为它定义一个样式:
<html><head>
<style type="text/css" media="print">
.print_blue { color: blue; }
</style>
</head><body>
<span id="to_change">This is black text.</span>
<a href="#" onclick="jQuery('#to_change').addClass('print_blue');return false">Click here</a>
to change it to blue for printing.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
</body></html>
答案 3 :(得分:0)
在您的应用程序中创建一个print css文件,如下所示:
文件名:print.css
#myobject {
background-color: white;
}
在您的应用程序标题中,包含如下文件:
<link rel="stylesheet" href="print.css" type="text/css" media="print" />
当我加入样式表时,请注意 media =“print”。这将仅在打印时将白色背景应用于对象。