В принципе, в этом и на первый взгляд ничего сложного – подумаешь – немного переверстать текст, записать его в новый файл и связать с оригиналом ссылкой? Но это только на первый взгляд. А если страниц не одна а 1000? Это довольно долго. Высокие затраты времени и сил. Ну и денег. Поэтому необходимо найти какой-то более легкий способ.
Решение нам дает CSS. Оказывается, можно назначить таблицы стилей отдельно для различных типов устройств! По умолчанию таблица стилей назначается для all – для всех устройств одна. Нас интересует два варианта – для вывода на экран в браузере и принтера.
Задать это можно так:
Это для тэга <style>
Если Вы хотите подгружать файл со стилем, то так:
Ну а если хотите импортировать стиль внутри тэга <style>, то так:
В дополнение к этому, ту часть таблицы стиля, которая используется и в версии для печати и на сайте можно выделить в один общий блок, который можно подгрузить так:
или так:
Теперь нам остается назначить классы тем элементам, которые печатаются некорректно или вовсе не нужны при печати, записать два (или три) стиля и сделать ссылку на версию для печати:
В принципе, ссылку можно и не ставить. Все!
Некоторые замечания:
Ширина поля для печати 450 пикселей, соответственно, если все содержимое страницы заключено в таблицу, то задаем ей класс (или id) и пишем в версии для печати: width: 450px;
Те элементы страницы, которые не нужны при печати (например, меню) можно скрыть, назначив им: display: none;
Дополнительный материал по теме можете найти здесь:http://www.gurusnetwork.com/tutorial/css_print/ (на английском)