【问题标题】:Weirdest IE8 Printing issue ever!有史以来最奇怪的 IE8 打印问题!
【发布时间】:2010-07-14 13:59:28
【问题描述】:

我们有两台服务器,一台开发/测试服务器 (Win Server 2008) 和一台实时服务器 (Win Server 2003 SP2)。将相同的 ASP.NET 代码库部署到两者,一切正常,除了使用实时服务器在 IE 8 上打印时。

实时服务器以更大的字体打印向右移动的内容。

我就是不明白!值得注意的是,我们正在使用特定的 css 文件进行打印:

<link href="/css/print.css" type="text/css" rel="stylesheet" media="print" />

两台服务器都在生成相同的 HTML 源代码。我什至不知道从哪里开始找麻烦。

【问题讨论】:

  • 我假设您在每种情况下都从 same 客户端连接到实时服务器和测试服务器,打印到同一台打印机?您可以尝试“打印到文件”(最好使用 PostScript 驱动程序),然后分析两个文件之间的差异。或者你甚至可以使用“打印到 PDF”?特别注意两件事:哪些字体被使用(嵌入?)到打印作业中?为每个作业定义了哪些页面大小和边距?
  • 它没有使用 print.css 文件中的字体样式

标签: asp.net iis printing internet-explorer-8


【解决方案1】:

如果 HTML 相同,则可能是 HTTP 标头不同。检查它们。这可能是 MIME 类型的问题或类似的问题。

我曾经让网络浏览器忽略我的 CSS 文件,因为服务器为 CSS 文件发送了错误的 MIME 类型。

【讨论】:

  • 两台服务器上的 Content-Type 都正确设置为 text/css
【解决方案2】:

检查每种情况下 IE8 使用的模式。您可以使用 IE8 的开发人员工具(按 F12,它位于顶部的菜单栏中)来完成此操作。

如果它们不同,这很可能是由 HTTP 标头引起的,正如 Artelius 所说。

【讨论】:

  • 他们都有相同的浏览器模式(IE8)
【解决方案3】:

事实证明,body 元素的宽度没有明确设置,并且由于某些原因触发了原始问题,直到我发现我已经使用 http 标头从 IIS 强制进行 IE7 仿真。

【讨论】:

    猜你喜欢
    • 2021-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 2016-02-29
    相关资源
    最近更新 更多