你如何debugging可打印的CSS?
我一直使用Firebug和IE Developer Toolbar来debugging棘手的CSS问题。 但偶尔,一个棘手的错误出现,只有当你打印页面时才会出现。
你用什么技术/工具来诊断这样的问题? 有没有办法在打印视图中更多地使用传统的CSSdebugging工具?
更新:我已经使用PDF打印机来避免浪费纸张; 我的问题是,我不能右键点击打印的DOM。 下面的一些其他答案是相当有帮助的,谢谢。 🙂
刚刚在lee-penkman网站发现了一个关于Firefox新function的评论:在Firefox中按Shift-F2
打开控制台,然后进入media emulate print
。 工作绝对好!
我使用WebDeveloper插件和CSS – >按媒体types显示CSS – >打印来查看打印时的CSS。 Firebug的检测工具可以通过插件过滤CSS。
在Chrome 51中:
打开开发工具( CTRL + F12
或CTRL + SHIFT + I
)并单击...
菜单,单击More Tools > Rendering settings
以打开开发人员控制台的“ Rendering
选项卡(或者,如果控制台已打开,请导航至此选项卡)。
在该选项卡中,select并选中Emulate Media: print
。
我使用Firefox和开发人员工具栏 。
我使用任务栏中的实时CSS编辑工具,它是非常有用的修改您的CSS实时查看结果。
我也使用大纲function,这是在你的网站上的鼠标,这样的div和东西。 真的很有帮助,find分区。
对于打印问题,请转到CSS – >按介质显示CSS样式 – >打印
这里有很多其他的工具,我大概用了10%左右。
尝试也许你find有用的东西。
在Chrome开发工具(F12 \ Ctrl(在Mac上的cmd)+ Shift + C):在模拟选项卡(从Chrome 32以后恕我直言),有一个标签“媒体”。
在那里你可以检查媒体模拟checkbox,并select你想要模拟的媒体('打印','屏幕'等)
如何最后列出您的打印CSS,并从您的CSS链接或导入语句中删除“打印”条件? 然后,您正在浏览器窗口中debugging打印CSS。
我使用的Adobe PDF虚拟打印机,因为它是一个真正的打印机,你会得到最接近的东西,而不浪费墨水和纸张。
无论如何,build议有一个单独的CSS打印,用更简单的graphics和更less的图像,你只是用于devise目的。
我总是使用Web开发工具栏(如其他答案中所述),但Firebug似乎不时地错过了一些样式。 所以我给我的浏览器添加了一个书签,并添加了下面的Javascript作为书签的URL。 现在我可以简单地通过点击书签切换到打印样式:
javascript:(function(){var%20h,a,f;a=document.getElementsByTagName('link');for(h=0;h<a.length;h++){f=a[h];if(f.rel.toLowerCase().match(/stylesheet/)&&f.href&&(f.media=='print'||f.media=='screen')){var%20g=f.href.replace(/(&|%5C?)forceReload=\d+/,'');if(f.media.toLowerCase().match(/screen/))f.media="dontshow";if(f.media.toLowerCase().match(/print/))f.media="all";f.href=g+(g.match(/\?/)?'&':'?')+'forceReload='+(new%20Date().valueOf());}}})()
上面的代码find了所有的样式表链接,testing它是否为media = print,如果是,则将其更改为media = all(并且通过用media = dontshowreplace它来隐藏所有media = screen),并通过添加一个时间标记来重新加载样式表url 基本的重新加载脚本是从别人,我添加媒体的一部分。 这对我很好!
这将是上面的JavaScript URL更可读的版本来解释:
javascript: (function() { var h, a, f; a = document.getElementsByTagName('link'); for (h = 0; h < a.length; h) { f = a[h]; if (f.rel.toLowerCase().match(/stylesheet/) && f.href && (f.media == 'print' || f.media == 'screen')) { var g = f.href.replace(/(&|\?)forceReload=\d /, ''); if (f.media.toLowerCase().match(/screen/)) f.media = "dontshow"; if (f.media.toLowerCase().match(/print/)) f.media = "all"; f.href = g(g.match(/\?/) ? '&' : '?') 'forceReload=' (new Date().valueOf()); } } })()
如果您不想付钱,请打印到Microsoft XPS Document Writer。 或者使用SnagIt,如果你有资金(现场免费试用)。