【问题标题】:IE9 scripting causing print rendering problemsIE9 脚本导致打印呈现问题
【发布时间】:2012-03-31 18:55:23
【问题描述】:

我的网站在 IE9(以及早期的 IE 版本,如果可以相信 Expression Web 4 SuperPreview)以及 Expression Web 4 可访问的所有其他浏览器(Firefox、Chrome、Safari 和 Opera)中都能完美呈现。我使用所有浏览器的最新版本(昨天更新)。

它在除 IE9 之外的所有浏览器中都能正常打印(如果缩放到 70%,Opera 打印也很合理)。

如果我不点击“允许被阻止的内容”(据我从研究中可以看出,它会强制明确批准脚本),它会在 IE9 中完美打印(实际上是所有浏览器中最好的)。我为各种目的使用了一些简单的 jQuery 脚本。但是,如果我确实单击了该选项,则当页面完美呈现时,打印件根本不会呈现。背景居中,内容基本脱离背景,填满整个打印预览画面。打印本身会剪掉那些不会浮在包含背景的页面部分顶部的内容。我检查了我的 IE9 选项,我确实允许活动脚本,这让我想知道为什么会出现阻塞弹出窗口以及软件渲染(而不是 GPU)。

有人对可能发生的事情有任何想法吗?谢谢。

【问题讨论】:

  • 我应该补充一点,我正在使用背景渐变,MS 渐变选择器网站上提供的背景渐变,并剪切和粘贴了该 CSS 代码。效果很好,但也许是渐变导致了问题。如果未点击“允许阻止的内容”,则不会呈现渐变,这是打印正确呈现的时候。
  • 我不敢相信!!对于那些可能查看这篇文章的人,我注释掉了作为渐变的 CSS——我从 MS 自己托管的网站上购买的!! IE9 现在可以完美运行 - 渲染和打印 - 即使在允许被阻止的内容之后也是如此。
  • 更新:正是这行代码造成了问题:-ms-filter: "progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#D4D4D4, EndColorStr=#4D4D4D)";
  • 上面这行 CSS 代码,是 IE10 之前的 IE 版本的渐变生成器,在 IE9 中产生渐变,但也会产生打印渲染问题。我承认这段代码不是来自前面提到的 MS 渐变选择器网站,它以尚未发布的 IE10 开头,而是来自 CSS 教科书。向 MS 道歉。
  • 那么,我是为 IE9 选择一个漂亮的渐变(没有 SVG 的烦恼和复杂性),还是选择打印页面的能力?

标签: internet-explorer-9


【解决方案1】:

我发现 -ms-filter 渐变解决方法会在 IE9 中生成无法打印的网页。决定:去掉那行代码,在 IE 中使用单色背景色。站点将在所有其他浏览器中显示渐变,而不会出现打印问题,并且在 IE10 发布时(希望如此)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 2015-03-10
    • 1970-01-01
    • 1970-01-01
    • 2014-12-18
    • 2012-09-05
    相关资源
    最近更新 更多