jQuery是否可以修改特定媒体类型的CSS(例如打印)?
我的具体问题是我在元素上使用动画并且它覆盖了打印样式表,这会破坏我的打印布局。虽然我的问题与提出的一般问题略有不同,但我认为答案可以帮助我解决我的问题。任何可能的解决方法也会有所帮助。很有责任。
答案 0 :(得分:6)
您不需要使用Javascript执行此操作。只需在css文档中使用@media
规则即可。
你可以只在一个css文件中写下所有这些东西。这是具体的W3C Documentation
@media screen {
/* all your fancy screen css with a bunch of animation stuff*/
}
@media print {
/* all your fancy print css just plain */
}
您可以编写非常具体的声明,并根据您的需要匹配所有元素。顺便说一句,它支持到IE6 。在我们的项目中充当魅力。
@media print {
body { font-size: 10pt }
}
@media screen {
body { font-size: 13px }
}
@media screen, print {
body { line-height: 1.2 }
}
答案 1 :(得分:5)
使用隐藏元素的特定规则为您的媒体(打印)添加css(例如#div {display:none;})
在您的脚本中,如果:
$('#div').is(':visible')
是真的,然后你在印刷媒体上(打印)。