IE9的打印页面上显示滚动条?
Posted
技术标签:
【中文标题】IE9的打印页面上显示滚动条?【英文标题】:Scroll bars showing on printed page in IE9? 【发布时间】:2011-07-12 21:49:00 【问题描述】:我遇到了 IE9 在打印页面上显示水平滚动条的问题,即使页面内容完全适合。我已经尝试了几件事来在我的打印 css 中删除它们。有没有其他人遇到过这个问题并找到了解决方法?
【问题讨论】:
你试过溢出:隐藏吗? 是的。我还隐藏了页面上的所有内容,滚动条仍然出现。 这是在打印预览中还是在打印页面本身中? 你试过设置滚动条的样式吗?我的猜测是 IE 仍然支持.. 但是你确定你应用了溢出:隐藏到正确的元素吗?或者是在一个框架或什么的?可能是一个带有糟糕 css 的广告? 如果您提供当前问题的链接或屏幕截图,将会有很大帮助。 【参考方案1】:在 javascript 函数 print 中的 body
标记上使用以下代码:
printWin.document.write(
'<style>div overflow: visible !important; height:auto !important;</style>'
);
【讨论】:
【参考方案2】:@media print
.dont-print
overflow:hidden;
dont-print 只是一个我以前用过的类名,把它改成你需要的任何东西
【讨论】:
【参考方案3】:我遇到了同样的问题。这是一个有趣的修复。将溢出属性定义为重要。有用。在 IE 上大声笑。
overflow:hidden !important;
【讨论】:
另外值得注意的是,您也可以使用overflow:visible!important;
。这也摆脱了滚动条,但 显示 外面的任何内容。【参考方案4】:
过去我曾多次在 IE 上遇到过这个问题。通常是保证金问题。不同的浏览器计算边距的方式不同。你是如何定位元素的?您是否有围绕内容的固定宽度包装器,或者主体是否扩展到浏览器宽度? 没有实际的 css 代码,确实很难查明问题。
我建议您删除所有负边距(IE 不喜欢这些),并检查您是否在不必要的元素上有任何右边距。
【讨论】:
【参考方案5】:您确定设置了正确的样式表媒体类型吗?喜欢:
<link rel="stylesheet" href="print.css" type="text/css" media="print" />`
并在您的 print.css 中尝试以下操作:
html, body overflow-x: hidden;
【讨论】:
你可以试试:html, body overflow: auto;
以上是关于IE9的打印页面上显示滚动条?的主要内容,如果未能解决你的问题,请参考以下文章