Window.Print()Div with Overflow-x?

时间:2013-08-26 15:11:10

标签: javascript internet-explorer

我想要打印一个具有overflow-x:auto;属性的div(它包含多个页面宽度)。

在Chrome中,页面会缩放并显示正确。但是,在IE(8-10)中,它会将div切断到屏幕上可见的部分。

以下是我的功能:

function print() {
            var printContent = document.getElementById("<%=printable.ClientID%>");
            var windowUrl = 'about:blank';
            var uniqueName = new Date();
            var windowName = 'Print' + uniqueName.getTime();
            var printWindow = window.open(windowUrl, windowName, 'left=5000,top=5000,width=0,height=0');

            printWindow.document.write("<html> ");
            printWindow.document.write("<head> ");
            printWindow.document.write("<link type=text/css rel=stylesheet href='/eBusinessStylesNew.css' /> ");
            printWindow.document.write("</head> ");
            printWindow.document.write("<body topmargin=0 leftmargin=0 bgcolor='#ffffff'> ");
            printWindow.document.write(printContent.innerHTML);
            printWindow.document.write("</body> ");
            printWindow.document.write("</html> ");
            printWindow.document.close();
            printWindow.focus();
            printWindow.print();
            printWindow.close();
            return false;
        }

我可以添加任何功能来正确打印我的div吗?

1 个答案:

答案 0 :(得分:1)

试试这个(<link...>之后):

printWindow.document.write('<style media="print">a_selector_for_the_div{overflow-x:visible;}</style>');