РАЗНОЕ / Скрываем ненужные блоки страницы при отправке ее на печать

Заметка создана: 09 февраля 2025 г.

Вариант 1

Кнопка
<nopostcode>
    <a target="_blank" href="?print" rel="nofollow" id="print" title="Распечатать">
         Коммерческое<br />предложение <span>Распечатать</span>
    </a>
</nopostcode>

Подгружаем макет для печати и добавляем стиль "no_print"

<?php
if(isset($_GET['print']))
{
$oTemplate = Core_Page::instance()->template->id('6'); // id макета "Версия для печати"
}
?>

<HTML>
<head>
...

<style type="text/css">
  div.no_print {display: none; }
</style>

</head>
<body onload="javascript:window.print();" class="print">

<div class="no_print">
тут пишем текст который не будет выводиться на печать, но он прекрасно отображается и читается в браузере
</div>

  этот текст вы увидите при печати =)

<div class='no_print'>
тут пишем текст который не будет выводиться на печать, но он прекрасно отображается и читается в браузере
<a href=# onClick="window.print();">распечатать</a>
</div>

</body>
</HTML>

Вариант 2

@media print {
#form_err, .button { display:none}
}