У меня есть страница с большим количеством данных, таблиц и контента.Я хочу сделать версию для печати, которая будет отображать только несколько выбранных вещей.
Вместо того, чтобы писать другую страницу только для печати, я читал о функции CSS для "@media print".
Во-первых, какие браузеры поддерживают это?Поскольку это внутренняя функция, все в порядке, если только последние браузеры поддерживают ее.
Я думал пометить несколько элементов DOM классом «printable» и в основном применить «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 ...