我正在自定义网页上的样式,以获得更好的打印体验。
我已经在使用打印介质查询来隐藏页眉,页脚和导航窗格。由于容器的大小可能会改变,我试图动态缩放主容器以适应纸张并保持容器的纵横比。它在Chrome中与MediaQueryListener完美配合(根据当前容器大小和纸张大小计算缩放系数,并生成类似 " @media print {.containerClass {transform: scale(0.3)}}" 。然后将它追加到body中。但我被封锁了如何在IE中做(总是:-()。
我正在查看 onbeforeprint 和 onafterprint ,并认为他们会为我做这件事。 But actually it turned out that onafterprint
happened after onbeforeprint
but before the print dialog, which means it was not technically after print。当onbeforeprint
被调用时,媒体查询尚未应用于页面。所以这就是问题,我的比例因子计算是基于纸张尺寸和当前容器尺寸。但纸张尺寸仅在打印模式下可用。但似乎我无法检测当前页面是否在IE中处于打印模式。
你们知道如何在IE / Edge中实现这一目标吗?