我需要从Mozilla FF保存到pdf屏幕网站的某些页面。但是我偶然发现了一个带有css保护的网站,它阻止了打印(因此打印到pdf):它打印空白页面。 我需要纯JavaScript,从js控制台运行以覆盖任何 @media打印样式。我尝试了几个命令但没有成功。我知道如何手动完成,但需要更简单的方法。
css样式表是
* {-moz-user-select: none;-khtml-user-select: none;-webkit-user-select: none;-ms-user-select: none;-o-user-select: none;user-select: none;}
@media print {html, body {display: none;}}
PS。对文本选择预防也很好,但不是那么重要。
答案 0 :(得分:1)
一种选择是通过将<style>
注入<head>
来覆盖CSS,如下所示:
var override = document.createElement("style");
override.innerText = "* {user-select: auto;} @media print {html, body { display: block; }}";
document.head.appendChild(override);
Example on Codepen(尝试使用和不使用JS的打印预览)