白色背景div在IE9打印预览中是透明的

use*_*194 6 printf internet-explorer-9

我有一个黑色文字和白色背景的div.在IE9中显示得很好.但是,在打印预览中,白色背景是透明的.适用于Chrome,Firefox和Safari.有任何想法吗?

以下链接显示该页面.显示很好,但地图右下角的白框在打印预览中具有透明背景.

http://www.mycoursewalk.com/course_walk/print/426

谢谢,

缺口,

Anu*_*tel 5

默认情况下,IE不会打印背景图像和颜色.有一个设置可以更改为打印背景图像和网页颜色[文件>打印预览>页面设置(齿轮图标)].

我处于类似情况,我无法控制客户端的浏览器设置.在尝试了许多其他方法之后,我最终使用了以下逻辑: -

  1. 添加了一个图像(1px x 1xx,白色),绝对位置在顶部0和左边0.

  2. 将其设置为在@media screen {.div {display:none}中显示none并在@media print {.div {display:block}中显示块

  3. 使用javaScript设置图像的高度(在您的情况下可能需要宽度)与文本的div高度完全相同:$('#whiteBg').height($('#content').height ());

HTML:

<body>
    <div id="wrapper"> <!-- not necessary -->
        <img scr="./img/white.png" id="whiteBg" />
        <div id="content">
            <!-- content here -->
        </div>
    </div>
    <div id="footer">
    </div>
</body>
Run Code Online (Sandbox Code Playgroud)

CSS:

@media screen {
    #whiteBg {
        display: none;
    }
}

@media print {
   #whiteBg {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; //to send it to the background
   }
}
Run Code Online (Sandbox Code Playgroud)

jQuery的:

 @('#whiteBg').height(  $('#content')).height()  );
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码将页脚设置在打印输出的最后一页的底部.我在每个页面都有页脚,并且在其上面有内容(文本),就像你的一样.除了最后一页,我用白色背景隐藏了页脚.HTML的所有页面底部的HTML页脚在IE中打印出来