为什么我的 CSS 没有打印
Why my CSS is not printed?
我正在尝试通过创建一个包含我要打印的html的新窗口元素来打印DIV的内容。一切正常,css 样式在打印预览窗口中正确显示,但当窗口物理打印到文件或打印机时,样式会丢失。我怀疑 print() 事件是在加载 css 之前触发的,但不确定如何解决这个问题。
这是我的js代码
function printDiv (elem)
{
var popup = window.open('','','width=800,height=500,toolbar=no, menubar=no');
popup.document.writeln('<!DOCTYPE html>');
popup.document.writeln('<html><head><title></title>');
popup.document.writeln('<link rel="stylesheet" type="text/css" href="/assets/css/main.css">');
popup.document.writeln('</head><body class="popup-body">');
popup.document.writeln(elem.html());
popup.document.writeln('</body>');
popup.document.writeln('</html>');
popup.print();
popup.close();
}
您可以在打印时使用@media
添加样式,@media print
http://www.w3schools.com/css/css_mediatypes.asp
您可以通过 setTimeout 延迟文档的打印,例如
setTimeout(function(){
popup.print(); }, delayedAmount);
例如
setTimeout(
function(){
popup.print();
popup.close();
}, 1000);
这将在加载窗口 1000 毫秒(1 秒)后打印文档。请注意,您还必须延迟窗口的关闭。
相关文章:
- Css打印内容的分页符
- 有没有一种方法可以将媒体打印css启用为普通视图
- 使用CSS打印DIV内容,不起作用
- 自定义 CSS 媒体打印查询中的模式高度和宽度
- 如何打印隐藏文章(Css/JQuery)
- CSS媒体以小册子形式打印文档
- 使用Javascript和CSS打印多页
- CSS打印方向-预览时为横向,打印时为纵向
- CSS:禁用页眉&Chrome打印预览页脚
- 在打印代码中不读取Css
- 使用当前 css 打印 html 页面
- 打印时每页上的分页符和表头.打印表 CSS 问题
- CSS不适用于(在第一页之后)尝试使用javascript打印html页面
- 删除用于打印的 JavaScript CSS 覆盖
- 为什么我的 CSS 没有打印
- 媒体打印css无法在IE11打印预览中工作
- Jquery打印区域打印css颜色
- 为同一页面的两个部分打印CSS
- 如何在打印 CSS 中覆盖内联样式
- 打印CSS类的属性列表