Я бы хотел стилизовать длинный HTML-документ, который я собираюсь распечатать (/ преобразовать в PDF), чтобы на определенной физической странице тело стилизовалось одним способом, а на любой другой странице - стилемпо-другому.В частности, я хочу, чтобы страница, которая содержит определенный абзац (скажем, <p id="dramatic-scene">
), имела фоновое изображение, отличное от других страниц.
(Сам документ не структурирован для определенных страниц- вместо того, чтобы иметь div для каждой страницы, у нас есть один контейнер для полного содержимого фрагмента. Если бы это было так, мы могли бы просто сделать div для страницы, охватывающей все размеры страницы, и дать ему изображение -но я надеюсь избежать жесткой структуры страниц.)
На уровне селекторов 4 существует псевдокласс :has()
(хотя он и является частью рабочего проекта, поэтому не поддерживаетсягде-нибудь еще ).Есть ли что-нибудь подобное, что может указать страницу для применения CSS?Что-то вроде @media print and (page-has: #dramatic-scene) {}
.Я сомневаюсь, что - какой-то быстрый поиск ничего не нашел - но я думаю, что стоит спросить здесь.
Более реалистично, есть ли способ, которым я мог бы смоделировать это с помощью JavaScript?Это было бы хорошим решением для моего варианта использования.Я не смог найти никакой информации об этом в поиске - любое обсуждение JS, связанное с печатью, похоже, касается создания кнопок для печати, замены экрана для таблицы стилей печати перед печатью и т. Д., Не заставляя стиль страницы реагировать на видимый контент.