Estoy tratando de imprimir un div usando javascript pero no está imprimiendo las imágenes de fondo css. Aquí está mi código. Me gustaría imprimir el div con sus propiedades. Gracias. Cualquier ayuda es muy apreciada.
<script type="text/javascript"> $(function () { $("#btnPrint").click(function () { var contents = $("#dvContents").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(); //Create a new HTML document. frameDoc.document.write('<html><head><title>DIV Contents</title>'); frameDoc.document.write('</head><body>'); //Append the external CSS file. frameDoc.document.write('<link href="IDCard.css" rel="stylesheet" type="text/css" />'); //Append the DIV contents. frameDoc.document.write(contents); frameDoc.document.write('</body></html>'); frameDoc.document.close(); setTimeout(function () { window.frames["frame1"].focus(); window.frames["frame1"].print(); frame1.remove(); }, 500); }); }); </script> <input type="button" id="btnPrint" value="Print" /> <div class="container" id="dvContents"> <div class="padding"> <div class="font"> SOME CONTENT HERE </div> </div> </div>A menudo, los navegadores no imprimirán fondos de forma predeterminada.
Cuando esté en la impresión de su navegador, probablemente encontrará una opción para imprimir fondos.
En mi Edge en Windows 10 mirando esta página, esto es lo que encontré (necesitaba desplazarme hacia abajo y seleccionar 'Más opciones').
Hay una casilla de verificación para seleccionar la impresión de fondo.