``` <div class="maindiv></div> <div class="printablediv"></div> function printData() { $('#ProductIdModal').modal('hide'); $(".maindiv").css('display','none'); $(".Printablediv").css('display','block'); $('.modal-backdrop').remove(); window.print(); } window.addEventListener("afterprint", myFunction); function myFunction() { $(".maindiv").css('display','block'); $(".Printablediv").css('display','none'); } ```Tengo una función escrita para imprimir un div en el éxito de Ajax llamado printData(). La llamada Ajax se realiza desde un botón que está en el modal llamado ProductModal
La vista previa de impresión que obtengo en Chrome está bien, pero el modal se muestra en mozilla firefox debajo del div.
Intente usar una consulta de medios impresos . Para su caso, no estoy seguro si necesita aplicar los estilos a la página o al modal.
Estos estilos CSS se aplican automáticamente solo al imprimir, incluso a través del navegador. Puedes cambiar el estilo u ocultar cosas.
/* print styles. put these at the end of your css. */ @media print { /* some of yours, copied from the js function: */ .modal { display: none; } .maindiv { display: none; } .Printablediv { display: block; } /* other. */ * { color:#333; } html { height:auto; } .otherThing { font-size: 20pt; } }Espero que funcione.