Печать невидимых блоков
На странице есть некоторые невидимые блоки текста. При клике, на соответствующие заголовки - они открываются. ДЖовольно распространенный прием.
У невидимых блоков изначально стоит display:block, чтобы в случае отключенных скриптов их было видно. При загрузке страницы запускается скрипт, который устанавливает им display:none. Затем при клике на соответствующий блоку заголовок происходит переключение свойства display. Задача: как сделать так, чтобы при печати у этих блоков также устанавливалось display:block, т.е. чтоб они печатались на принтере. Речь вот об этом сайте: http://rmc-center.com/seminars/themes.html |
Стили для блоков
Код:
#js .block { document.documentElement.id = 'js'; Теперь при отключенных скриптах блоки будут показаны, при включенных -- скрыты, причем без мигания. При печати блоки будут видны. Для показа блока style.display = 'block', для скрытия style.display = ''. |
Для Вашего варианта лучше всего сделать с помощью css
Сделать два разных файла, один для просмотра, второй для печати. <link media="screen" href="for_view.css" type="text/css" rel="stylesheet"/> <link media="print" href="for_print.css" type="text/css" rel="stylesheet"/> В for_print.css прописать по айдишникам всем вашим div - display:block --------------- Ну да. Я немного затормозил. |
Простите, я пока еще чайник, но первый совет как-то совсем непонятен.
Что касается второго, то у меня, разумеется есть два разных CSS для печати и для экрана. Но поскольку на body onload срабатывает скрипт, который отключает "видимость" невидимых блоков, то на печать они все равно не выводятся. Можно ли сделать так чтобы какой-то скрипт запускался при выводе на печать и устанавливал соответствующее свойство. Блоков много и этот прием применяется на нескольких страницах. Блоки выбираются по классу (когда нужно свойство установить скопом для всех) или по id - когда нужно включить/выключить конкретный блок. |
Цитата:
|
Цитата:
|
Он не срабатывает при печати, он срабатывает при загрузке страницы. Печатается то, что в данный момент на странице, а блоки в момент печати принудительно скрыты. Втыкайте в то, что я написал выше.
|
Цитата:
Так что, как говорится, всем спасибо! |
Часовой пояс GMT +3, время: 02:18. |