如何仅使用CSS显示打印的某些部分?

前端之家收集整理的这篇文章主要介绍了如何仅使用CSS显示打印的某些部分?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含大量数据,表格和内容页面.
我想制作一个打印版本,只显示很少的选择的东西.

我正在阅读关于CSS的“@media print”的功能,而不是再写一个仅用于打印的页面.

首先,什么浏览器支持它?由于这是一个内部功能,所以只有最新的浏览器才支持它.

我正在考虑用“可打印”类标记几个DOM元素,并且基本上将“display:none”应用于除“可打印”类的元素之外的所有内容.
那可行吗

我该如何实现?

编辑:
这是我到目前为止

<style type="text/css">
@media print {
    * {display:none;}
    .printable,.printable > * {display:block;}
}
</style>

但它隐藏了一切.如何使这些“可打印”元素可见?

编辑:
现在尝试消极的方法

<style type="text/css">
@media print {
    body *:not(.printable *) {display:none;}
}
</style>

这在理论上看起来不错,但是它不起作用.也许“不”不支持高级css …

解决方法

开始 here.但基本上你在想的是正确的做法.

Thanks,Now my question is actually
becoming: How do I apply CSS to a
class AND ALL OF ITS DESCENDANT
ELEMENTS? So that I can apply
“display:block” to whatever is in the
“printable” zones.

如果一个元素被设置为显示:none;所有的孩子也将被隐藏.但无论如何如果您想要将样式应用于其他所有子项,请执行以下操作:

.printable * {
   display: block;
}

这将适用于“可打印”区域的所有孩子的样式.

原文链接:https://www.f2er.com/css/216640.html

猜你在找的CSS相关文章