如何在打印div时加载和使用css文件

时间:2016-06-07 11:03:02

标签: javascript jquery html css printing

我需要打印一个特定的div,即无论css样式是否相同。对于样式,我使用bootstrape.cssmycss.css文件。但点击打印后,所有的css都消失了。这是我的尝试(实施一个):

function printProfile(){            
    var contents = $("#profileContent").html();
    var frame1 = $('<iframe />');

    frame1[0].name = "frame1";
    frame1.css({ "position": "absolute", "top": "-1000000px" }); 
    $("body").append(frame1);

    var frameDoc = frame1[0].contentWindow ? frame1[0].contentWindow : frame1[0].contentDocument.document ? frame1[0].contentDocument.document : frame1[0].contentDocument;

    frameDoc.document.open();
    frameDoc.document.write('<html><head><title>Profile Contents</title>');
    frameDoc.document.write('<link href="css/bootstrape.min.css" rel="stylesheet" type="text/css" />');
    frameDoc.document.write('<link href="css/mycss.css" rel="stylesheet" type="text/css" />');
    frameDoc.document.write('</head><body>');
    frameDoc.document.write(contents);
    frameDoc.document.write('</body></html>');
    frameDoc.document.close();

    setTimeout(function () {
        window.frames["frame1"].focus();
        window.frames["frame1"].print();
        frame1.remove();
    }, 100);
}

我哪里出错了?

1 个答案:

答案 0 :(得分:0)

尝试媒体=&#34;打印&#34;加载css时

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