我需要一个预览按钮,用于显示页面在打印时的外观。
与以下内容共同破解工作解决方案:
<link rel="stylesheet" type="text/css" media="all" href="layout.css">
<link rel="stylesheet" type="text/css" media="print" href="print.css">
const ps = document.querySelector('link[media=print]');
function togglePrintPreview(e)
{
ps.media = ps.media == 'print' ? 'all' : 'print';
}
但是,这当然只有在所有打印样式都在单独的样式表中并且只要在任何地方都有没有 @media print
查询时才有效。
所以......而不是......有没有办法在浏览器中从Javascript切换打印媒体?即让浏览器显示页面,就好像当前媒体是print
,而不是默认screen
?