Как должны работать свойства разрыва страницы в CSS?

StackOverflow https://stackoverflow.com/questions/808991

  •  03-07-2019
  •  | 
  •  

Вопрос

Современные браузеры - это предполагается, что CSS поддерживает свойства разрыва страницы в какой-то степени.Однако мне не удалось заставить ни один браузер печатать по-другому, когда я использую avoid, widows, или orphans.Я делаю это неправильно, или поддержка браузера просто не такая надежная, как рекламируется?

      h2 {
        page-break-after: avoid;
      }                         

      p {
        page-break-inside: avoid;   
        orphans: 2;
        widows: 2;
      }
Это было полезно?

Решение

Поддержка браузером печати - отстой.Не просто чуть-чуть, а совершенно тотально и ни с чем не сравнимо.Примерно раз в два года (в течение последних 10 лет) я поиграл с этим и всегда возвращаюсь к одному и тому же выводу:не полагайтесь на браузер, чтобы обеспечить хорошую печать.

Если он абсолютно необходим для правильного позиционирования, создайте PDF-файл "на лету" и позвольте пользователю распечатать его.

Другие советы

Если вы хотите сделать разрыв страницы, я знаю, что именно так это работает, по крайней мере, в Firefox и IE.В прошлый раз, когда я проверял, это работало в IE7.

Page 1

<br style="page-break-after:always" />

Page 2

IT следует распечатайте страницы на отдельных листах бумаги, полностью зависящих от браузера.

Я знаю, что это будет идти вразрез со всем, что все говорят о разработке html, но используйте таблицы.Поместите содержимое, которое должно оставаться вместе, в таблицу, и тогда страница не будет разделена посередине таблицы.Если таблица длиннее одной страницы, то она будет разделена где-то в середине таблицы, но использование таблиц - хороший способ сохранить содержимое вместе при печати.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top