2017-11-27 3 views
0

Ich habe ein paar Antworten darauf gesehen, aber es scheint nicht für mich zu funktionieren. Ich habe eine Funktion, um ein Raster zu drucken, aber das CSS wird nicht übertragen (es sei denn, ich füge manuell einen Stil hinzu). Wie füge ich eine CSS-Datei hinzu? Ich habe versucht:So fügen Sie eine CSS-Datei zum Drucken hinzu()

$("#btn").click(function (e) { 
     var divToPrint = document.getElementById("expertiseTable"); 
     newWin = window.open(""); 
     //var myStyle = '<link rel="stylesheet" type="text/css" href="http://localhost:59840/Content/Site.css" />'; 
     newWin.document.write('<html><head><link rel="stylesheet" type="text/css" href="http://localhost:59840/Content/Site.css" /></head><body onload="window.print()">' + divToPrint.innerHTML + '</body></html>'); 
     newWin.print(); 
}); 

http://localhost:59840/Content/Site.css in die broswer Platzierung bringt meine CSS-Datei, so weiß ich, dass es da, aber wenn ich versuche, es zu drucken scheint es nicht zu finden.

Antwort

1

Habe versucht yout etwas wie

newWin.document.write('<html><head><link rel="stylesheet" type="text/css" href="http://localhost:59840/Content/Site.css" media="print" /></head><body onload="window.print()">' + divToPrint.innerHTML + '</body></html>'); 

gefunden here.

Ich legte das media="print" Attribut.

Es besteht auch die Möglichkeit, die @media print Nutzung,

<style type="text/css"> 
    @media print{ 
     .aClass { display: none; } 
    } 
</style> 
+0

ja ich versucht, dass, es bringt nur die Inhalte und keine CSS – Keith

+0

'media =„print“Angeben' wird einfach _limit_ das Stylesheet zu ausschließlich für den Druck verwendet. Durch das Weglassen des 'media'-Attributs, wie es Keith bereits getan hat, wird es auf den Standardwert' all' zurückfallen - was sowieso 'print' beinhaltet. – agrm

+0

Lesen Sie über die 'media' attibute [hier] (https://www.w3schools.com/tags/att_link_media.asp), Sie haben Recht. –

Verwandte Themen