2014-11-30 3 views
0

У меня есть div со столом. Я попытался напечатать DIV с помощью Javascript:Печатать часть веб-страницы с помощью CSS

<script type="text/javascript"> 
    function myFunction() { 
     var prtContent = document.getElementById("printable"); 
     var WinPrint = window.open('', '', 'left=0,top=0,width=800,height=900,toolbar=0,scrollbars=0,status=0'); 
     WinPrint.document.write(prtContent.outerHTML); 
     WinPrint.document.close(); 
     WinPrint.focus(); 
     WinPrint.print(); 
     WinPrint.close(); 
    } 
</script> 

Но когда я печатаю этот DIV, то DIV не печатается с CSS, как text-alignment, границ таблицы и т.д.

+2

Почему вы не используете [@media печать] (http://www.smashingmagazine.com/2011/11/24/how-to-set-up- a-print-style-sheet /), чтобы скрыть все, что не должно быть на бумаге? – DarkBee

+1

встроенные стили или классы, на которые ссылаются внешние таблицы стилей? – Abhitalks

ответ

0

Поскольку вы создаете новый документ , он будет отображаться и распечатываться независимо, без каких-либо таблиц стилей в создаваемом документе. Если вы хотите стилизовать его, вам нужно связать таблицы стилей с созданным документом. В самом простом случае, если весь ваш код CSS находится в одном внешнем файле mystyle.css, достаточно добавить элемент link, который ссылается на него, например. следующее заявление перед оператором WinPrint.document.write(prtContent.outerHTML):

WinPrint.document.write('<link rel=stylesheet href=mystyle.css>'); 
Смежные вопросы