2010-07-06 2 views
2

У меня есть div, который можно просмотреть, если вы нажмете соответствующую ссылку, используя jQuery's slideToggle, чтобы отобразить его.печатный div, изначально установленный для отображения: none;

имеет

$(document).ready(function() { 
    $('#content-click').click(function() { 
     $("#content").slideToggle(100); 
    }); 
}); 

<div id="content" style="display:none;"> 
    this is the content 
</div> 

В печати CSS, я подумал, может быть установка #content к #content {дисплей: блок; } сделал бы трюк, но не повезло.

Любая помощь приветствуется.

+0

Вы можете использовать кнопку «Пример кода» в стиле ваш код, я предполагаю, что ваш HTML не появляется из-за этого. – Marko

+1

Возможно, это не важно, но вам не хватает}} в вашем javascript. –

ответ

8

Вам необходимо переместить объявление display:none из строя, чтобы быть в вашей обычной таблице стилей. Причина, по которой ваша таблица стилей печати не показывает div при печати, заключается в том, что она переопределяется встроенным стилем.

3

Содержимое атрибута стиля элемента переопределит что-либо в CSS. Вы должны указать display: block; в атрибуте стиля или вообще не иметь атрибута стиля и вместо этого указать display: none; в непечатаемом CSS.

3

Я собираюсь ввернуть синтаксис этого немного, но в основном:

@media print 
{ 
    #content { display: block; } 
} 

@media screen 
{ 
    #content { display: none; } 
} 

И удалить встроенный стиль от элемента DIV

Смежные вопросы