我想在打印时修改样式:
有没有javascript事件可以监听文件>>print被调用的情况?它是什么?此外,是否有处理程序可以在打印完成时使用?它是什么?
如果有其他更好的方法,例如使用样式表,应该如何操作?
我想在打印时修改样式:
有没有javascript事件可以监听文件>>print被调用的情况?它是什么?此外,是否有处理程序可以在打印完成时使用?它是什么?
如果有其他更好的方法,例如使用样式表,应该如何操作?
不同的样式表
你可以为打印指定一个不同的样式表。
<link rel="stylesheet" type="text/css" media="print" href="print.css" />
<link rel="stylesheet" type="text/css" media="screen" href="main.css" />
一个样式表
如kodecraft所提到的,您也可以使用@media块将样式放入同一文件中。
@media print {
div.box {
width:100px;
}
}
@media screen {
div.box {
width:400px;
}
}
Firefox 6现在支持beforeprint和afterprint事件
https://developer.mozilla.org/en/Printing#Detecting_print_requests
在IE中,有非标准的window.onBeforePrint()和window.onAfterPrint()事件监听器。 我不知道是否有非IE的方法来实现它。
你想要做什么样的更改?通过为打印样式表指定不同的规则,可能可以解决您的问题。
<style type="text/css">
@media print {
div
{
overflow:visible;
}
}
</style>
IE有onbeforeprint和onafterprint