Ответ 1
В Firefox-подключителе под названием "Веб-разработчик" (https://addons.mozilla.org/en-US/firefox/addon/web-developer/) есть опция "Показать CSS по типу мультимедиа".
Я использовал (как обычно) правила @media print
, чтобы указать, как печать веб-страницы должна отличаться от онлайн-версии. Это работает очень хорошо, но тест действительно сложный. Мне обычно приходится делать следующие шаги:
screen
и print
.Что я хотел бы сделать (но не смог сделать это с любым браузером):
screen
и print
.Есть ли какой-либо браузер или комбинация браузера, плагина и процесса для получения похожих результатов? Если у вас есть идеи, как изменить организации файлов, с минимальными изменениями, чтобы получить желаемый результат, пожалуйста.
В Firefox-подключителе под названием "Веб-разработчик" (https://addons.mozilla.org/en-US/firefox/addon/web-developer/) есть опция "Показать CSS по типу мультимедиа".
У Chrome Developer Tools есть эта функция.
Вы пробовали с Print Friendly Расширение Google Chrome.
Это приятное расширение, которое добавляет кнопку и создает PDF файл веб-страницы одним щелчком. Надеюсь, что это может быть проще, чем ваш текущий процесс.
Если вы укажете свои правила печати и экрана CSS в отдельных файлах, вы можете сделать это довольно легко с помощью инструментов Chrome Developer. Загрузите свою страницу и откройте Инструменты разработчика. В представлении "Элементы" отредактируйте строку media = "print", чтобы она считывала media = "all".
Например, если вы связываете свои таблицы стилей, например:
<link href="/static/global/css/theme.css" media="all" rel="stylesheet" type="text/css" />
<link href="/static/global/css/print.css" media="print" rel="stylesheet" type="text/css" />
Изменить:
<link href="/static/global/css/print.css" media="print" rel="stylesheet" type="text/css" />
:
<link href="/static/global/css/print.css" media="all" rel="stylesheet" type="text/css" />
Теперь у вас будут стили печати, применяемые к копии в окне браузера. Вы можете перемещаться по стилям и элементам, как с любой другой веб-страницей.
Вот практика, которую я нашел полезной при стилизации для печати, когда макет печати должен быть модификацией общего стиля.
Что-то вроде:
/* @media print { */
#sidebar {display:none;}
/* } */
Я нашел другое решение моей проблемы, вызванное использованием конвейера активов Rails 3.1 для условного использования определенного css. Вот как это работает:
Используйте в основном HTML файле следующие директивы для таблиц стилей:
<link href="application.css" media="all" rel="stylesheet" type="text/css" />
<link href="screen.css" media="screen" rel="stylesheet" type="text/css" />
<link href="print.css" media="print" rel="stylesheet" type="text/css" />
изолировать все правила в таблицах стилей, которые
application.css
)screen.css
)print.css
)Во время проверки распечатки вашей веб-страницы переключите таблицы стилей в основной файл HTML:
<link href="application.css" media="all" rel="stylesheet" type="text/css" />
<link href="screen.css" media="print" rel="stylesheet" type="text/css" />
<link href="print.css" media="screen" rel="stylesheet" type="text/css" />
Обратите внимание на переключатель во второй и третьей строках для media="print|screen"
.
В результате вы теперь можете вызвать свой основной файл HTML и посмотреть, как он будет выглядеть, если вы распечатаете его в обычных условиях. Все инструменты, которые вы обычно используете (Firefox Firebug, Chrome Developer Tools, Opera DragonFly,...) будут работать как обычно, поэтому вы можете проверить свой DOM, увидеть флажки, сменить CSS на лету и просто перезагрузить страницу, затем.
Хорошо работает для меня, если я натолкнусь на некоторые недостатки, я вернусь и отметю это тоже.