如何使用屏幕样式表打印?

vy3*_*y32 58 browser printing

我使用的许多网站的印刷媒体样式表非常糟糕,但它们的屏幕样式表非常好。

有没有办法告诉我的浏览器忽略打印样式表而只使用屏幕样式表打印?

当我想向客户展示两者之间的区别时,我也想这样做。

Jam*_*mes 23

使用Chrome开发者工具(Ctrl+ Shift+ I)是我发现作品的唯一的事情。

  1. 搜索media="screen"该属性的所有实例并删除该属性。
  2. 然后搜索media="print"并删除整个链接。
  3. 然后尝试打印。

这通常会为我提供带有屏幕样式的页面。

如果你真的只想禁用打印样式,你可以安装 Web Developer 扩展(我认为有一个适用于 Firefox 和 Chrome 的版本)。它有一个按钮来禁用打印样式。但是,它不会将“屏幕”样式扩展到打印,因此大多数情况下它不会按您希望的方式工作。

  • @vy32 这根本不是一个坏主意。一段时间以来,我一直想使用 Chrome 扩展程序。在假期里,我终于有几个小时了。所以这里是 PrintScreen,当页面具有自定义打印/屏幕 css 媒体选择器时,您可以单击一个小按钮。[链接](https://chrome.google.com/webstore/detail/printscreen/jmhipjpegbhhmhneoogigjgfmekglogf) (3认同)
  • 我需要一个插件来执行此操作。 (2认同)

Leo*_*cci 18

请改为检查巴斯蒂安的答案:https : //superuser.com/a/1064165/201530


小智 16

开发者工具中有一种直接选择媒体仿真的新方法,参见/sf/ask/667869331/

  • 随着软件的发展,stackexchange 的答案也应该如此——这应该是选定的答案。 (2认同)

小智 13

我在Chrome 中找到了一种简单的方法

打开 Developer Tool > Rendering > 在 Emulate CSS media 中选择“screen”。

现在尝试打印。它将选择屏幕 CSS 而不是 Print CSS。

  • 更具体地说,在当前的 Chrome 上:打开开发人员工具。右上角的三点菜单 > 更多工具 > 渲染。向下滚动以模拟 CSS 媒体。 (3认同)

小智 6

Leo 有一个好主意,但它并没有像James 所说的那样:它应该是

$('*[media="screen"]').attr('media', '');$('*[media="print"]').remove();
Run Code Online (Sandbox Code Playgroud)

提示:将以下内容保存为书签以便于使用:

javascript:var%20el=document.createElement('script');el.type="text/javascript";el.src="http://code.jquery.com/jquery-latest.pack.js";document.body.appendChild(el);setTimeout(function(){$('*[media="screen"]').attr('media','');$('*[media="print"]').remove();},%202000)
Run Code Online (Sandbox Code Playgroud)

这会预加载 jQuery 并等待 2 秒以使其完成,但如果等待还不够,只需再次运行它,jQuery 应该已在此期间加载。