使用Javascript更改显示样式(CSS)而不影响打印样式

前端之家收集整理的这篇文章主要介绍了使用Javascript更改显示样式(CSS)而不影响打印样式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个Web应用程序,它使用一个单独的print stylesheet来控制页面从打印机出来时的外观.在我最近对网站进行了一些Javascript增强之前,这一点非常有效.其中一项增强功能允许用户冻结页眉和导航以及表头.这背后的Javascript做了一些CSS技巧来冻结屏幕上的元素.不幸的是,将position:fixed应用于我的标题(例如)会导致它在每个页面上打印,这不是一个理想的效果.如何在不影响打印样式的情况下使用Javascript调整客户端的元素样式?

@media print { #foo { color: blue; } }               /* Print definition */
@media screen { #foo { color: green; } }             /* Display definition */
document.getElementById('foo').style.color = 'red';  /* Overrides both! */
最佳答案
而不是使用以下方法更改元素的属性

document.getElementById('foo').style.color = 'red'; 

添加一个新的< style>元素,例如:

$('

将所有必需的更改连接到一个< style>状态会更好.元素,如果可能的话.

猜你在找的CSS相关文章