有没有一种方法可以将媒体打印css启用为普通视图
Is there a way to enable media print css to a normal view?
我开发了一个网站,其中包含一堆打印媒体查询,以便在打印页面时对齐内容。当您在web浏览器上进入打印模式时,查询效果非常好。但我希望在常规网页上应用/删除那些CCD_ 1查询,而不必进入打印模式。(点击按钮)有什么方法可以实现这一点吗?
除了Boldewyn的答案外,如果<style>
标签中有@media print
样式,则可以用@media screen
:替换它们
Array.prototype.forEach.call(document.getElementsByTagName('style'), function(style) {
style.innerText = style.innerText.replace(/@media print/gi, '@media screen');
});
请参阅演示。
添加到yezzz的答案中:如果您在类似的HTML中链接了打印CSS
<link rel="stylesheet" media="print" href="...">
您可以删除media
属性,以便在服务器上或使用Javascript:在任何地方启用这些样式
document.querySelector('[media="print"]').removeAttribute('media');
请注意,如果打印样式表中的语句被封装在@media print {}
规则中,那么这是不起作用的。
首先想到的是使用类。举个简单的例子给你大致的想法。如果你有一个在主体上切换emulateprint
类的按钮,你可以使用例如这个css:
body {
color: black;
}
body.emulateprint {
/* put same styles as @media print in here */
color: red;
}
@media print {
body {
color:red;
}
}
相关文章:
- Css打印内容的分页符
- 有没有一种方法可以将媒体打印css启用为普通视图
- 使用CSS打印DIV内容,不起作用
- 自定义 CSS 媒体打印查询中的模式高度和宽度
- 如何打印隐藏文章(Css/JQuery)
- CSS媒体以小册子形式打印文档
- 使用Javascript和CSS打印多页
- CSS打印方向-预览时为横向,打印时为纵向
- CSS:禁用页眉&Chrome打印预览页脚
- 在打印代码中不读取Css
- 使用当前 css 打印 html 页面
- 打印时每页上的分页符和表头.打印表 CSS 问题
- 使用 CSS 打印网页的一部分
- css打印查询在firefox中不起作用
- 媒体查询打印在CSS打印按比例缩小版本在Chrome 54+
- Css打印表单
- CSS打印修复' background-size: cover; '
- 在asp.net中使用css打印列表视图,使用javascript
- 如何用css打印树视图
- 使用CSS打印页面的不同部分