Quiero que la clase de contenido de impresión se oculte cuando se cierre la vista previa de impresión. Presionar Control P en IE lo activará o simplemente irá a archivo> vista previa de impresión. Gracias por cualquier ayuda de antemano.

  <script src="Scripts/jquery-1.10.2.min.js"></script>
<style type="text/css" media="print" ">
    .print-content {
        display: none !important;
    }


    @media print {
        .print-content { display: block !important;}

        textarea {
            display: none !important;
        }
    }
</style>
<script type="text/javascript">
    window.onbeforeprint = function () {
        $('.print-content').remove();
        $('textarea').each(function () {
            var text = $(this).val();
            $(this).after('<p class="well print-content">' + text + '</p>');
        });
    }
</script> 

TextArea MarkUp

 <form id="form1" runat="server">
    <div>
        <textarea name="textarea" id="the_textarea">    Some note
            orem ipsum dolor sit amet, consectetur adipiscing elit. Nulla tincidunt congue cursus. Nunc nib
        </textarea>

    </div>
</form>  
-1
Terry H 16 oct. 2018 a las 18:20

2 respuestas

La mejor respuesta

Elimina media="print" de tu etiqueta de estilo.

1
Darren 16 oct. 2018 a las 15:34

Bien, el problema está en la forma en que agregó su etiqueta de estilo. Ha establecido un atributo media="print", por lo que el siguiente CSS no se aplicará en la pantalla.

.print-content {
  display: none !important;
}

La solución es eliminar el media="print" como ya ha agregado @media print {} usando consultas @media.

1
Praveen Kumar Purushothaman 16 oct. 2018 a las 15:36