此问题在此处已有答案:
(13个答案)
5年前关闭。
我使用了@media print
规则来指定一个网页的打印应该与在线版本有什么不同。这工作得很好,但是测试真的很难。我通常要做的是下面的步骤:
1.为screen
和print
创建不同的样式。
1.在屏幕模式下启动页面
1.打印页面,例如打印到PDF打印机。
1.看看结果。
1.试着找出行为错误的规则。
我想做什么(但无法使用任何浏览器):
1.为screen
和print
创建不同的样式。
1.在屏幕模式下启动页面
1.进入预览打印模式(例如,适用于Opera、Firefox)
1.使用Firebug(Firefox)或Dragonfly(Opera)等可用工具检查DOM和当前样式。
1.动态更改CSS,重新加载页面,然后再次查看结果和DOM。
是否有任何浏览器或浏览器、插件和进程的组合可以获得类似的结果?如果你有想法如何改变文件的组织,以最小的变化,以获得所希望的结果,欢迎你。
6条答案
按热度按时间ejk8hzay1#
Chrome开发者工具就有这个功能。
1.打开您要测试的页面的Chrome开发者工具。
1.打开抽屉(如果尚未打开)。(按Esc键。)
1.打开渲染选项卡。
1.向下滚动到Emulate CSS media type并从选择框中选择print
图片来源:https://developer.chrome.com/docs/devtools/rendering/emulate-css/#emulate-css-media-type-enable-print-preview
kg7wmglp2#
Firefox插件名为“Web Developer”(https://addons.mozilla.org/en-US/firefox/addon/web-developer/),它有一个“按媒体类型显示CSS”选项。
fdbelqdn3#
你试过Print Friendly谷歌浏览器扩展。
这是一个很好的扩展,它添加了一个按钮,并生成PDF格式的网页点击。希望这可能比您目前的过程更容易。
xjreopfe4#
受Using Rails 3.1 assets pipeline to conditionally use certain css的启发,我找到了一个不同的解决方案,其工作原理如下:
print.css
)注意第二行和第三行中
media="print|screen"
的开关。因此,你现在可以调用你的主HTML文件,看看如果你在正常情况下打印出来会是什么样子。你通常使用的所有工具(Firefox Firebug,Chrome开发工具,Opera DragonFly,...)都可以正常工作,所以你可以检查你的DOM,看到方框,动态更改CSS,然后重新加载你的页面。
对我来说效果很好,如果我会遇到一些缺点,我也会回来记下来。
ttygqcqt5#
如果你在单独的文件中指定打印和屏幕CSS规则,你可以使用Chrome开发者工具很容易地做到这一点。加载你的页面并打开开发者工具。在“元素”视图中,编辑media=“print”行,使其显示为media=“all”。
例如,如果链接样式表,如下所示:
变更:
改为:
现在,您的浏览器窗口中的副本将应用打印样式。您可以像浏览任何其他网页一样浏览样式和元素。
3okqufwl6#
我发现,当打印布局需要修改通用样式时,下面的实践对打印样式很有帮助。
1.创建一个使用@media print { }框住打印样式的打印样式表
1.最后应用该样式表
1.处理打印样式时,请临时注解掉构成打印样式的行
1.以您习惯的方式使用Firebug和Web Developer
1.取消对媒体包围的注解
比如: