Можно ли как-то определить (селектором ?), что после элемента идёт разрыв страницы печати?

Ссылка скопирована
1 ответ

Верстаю таблицу переменной длины, она может при печати разрываться на несколько страниц. Хочу в разрыве такой таблицы добавить приписку типа "продолжение на следующей странице", аналогично "начало на предыдущей странице".

Для этого мне надо как-то узнать, что при выводе на печать после данного элемента (строки таблицы) окажется разрыв страницы? То же вопрос относится к элементу (строке) перед которым был разрыв, и она оказалась первой наверху страницы.

Дополнительно:

Ответы:

Можно ли как-то определить (селектором ?), что после элемента идёт разрыв страницы печати?

CSS селектором? - нельзя.

Да и на js это будет на самая простая задача, поскольку js напрямую не предоставляет информацию о разрывах страниц при печати, поэтому высоту страницы нужно будет вычислять динамически и уже после, двигать содержимое страницы до или после разрыва.

  • Спасибо. Что-то подобное я и предполагала. Задавала вопрос без особой надежды. Думала, вдруг существует какой-то секретный псевдокласс.

    Для общего развития. Верно ли я понимаю, что браузер отправляет драйверу принтера предписания типа break-before, break-after для элементов страницы, но обратно драйвер никакой информации браузеру не сообщает, что и как у него там по страницам разложилось, и именно поэтому браузер не может что-то там после этого поменять, добавить в содержание или в стилизацию элементов?

  • Tyusha, все верно

Частично может помочь:
Для повторяющейся шапки:
https://developer.mozilla.org/en-US/docs/Web/HTML/... или https://developer.mozilla.org/en-US/docs/Web/CSS/d...

When printing a document, in the case of a multipage table, the table head usually specifies information that remains the same on each page.

для повторяющегося подвала то же, но tfoot

как менять внутри информацию или как не выводить в конце - не знаю

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Павел Админов Ответ

Для определения разрыва страницы печати после определенного элемента на веб-странице можно использовать CSS свойство `page-break-after`. Это свойство позволяет управлять разрывом страницы перед или после элемента при печати.

Пример использования этого свойства в CSS:

.element {
    page-break-after: always;
}

.element { page-break-after: always; }

В этом примере, элементу с классом `element` будет добавлен разрыв страницы после него при печати. Вы также можете использовать другие значения для `page-break-after`, такие как `auto`, `avoid`, `left`, `right`, `inherit`, в зависимости от ваших потребностей.

Если вы хотите определить разрыв страницы перед элементом, вы можете использовать `page-break-before`. Также, если вам нужно управлять разрывом страницы как до, так и после элемента, вы можете использовать `page-break-inside`.

Таким образом, вы можете использовать CSS свойства `page-break-after`, `page-break-before` и `page-break-inside` для определения разрыва страницы печати после, перед или внутри элементов на веб-странице. Надеюсь, это поможет вам решить вашу проблему!

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно