Подтвердить что ты не робот

Печать только на 1 странице

Я работаю над удобным для печати css для веб-сайта. Он отлично просматривает/печатает в IE, но Firefox (версия 3.6) только просматривает/печатает первую страницу.

Кто-нибудь знает о чем-либо, что обычно вызывает это? Разметка довольно сложная, поэтому я не уверен, с чего начать!

Спасибо.

Edit

Это решение только усугубило ситуацию.

https://support.mozilla.com/ga-IE/info/667285#answer-115916

Похоже, печать печатается только в FF. Клиенту не понравится это слышать - надеюсь, что они не используют FF!

4b9b3361

Ответ 1

давняя ошибка с печатью абсолютно позиционированных элементов была исправлена ​​в Firefox 3.

Проблемы с отсутствующими страницами отслеживаются в ошибка 521204 (просмотрите список "зависит от" ). У вас есть кадры или длинные таблицы на странице, которую вы пытаетесь распечатать?

И да, печать в Firefox недоиспользуется, извините, вам нужно иметь дело с ней...

Ответ 2

Я только что узнал, что из элемента с

display:inline-block; 

печатается только первая страница, и все остальное скрыто. установив это на

display:block;

было решением в моем случае.

Ответ 3

Если вы не хотите проходить весь свой код, это единственное, что я нашел, что работает для меня, не испортив все мои другие CSS:

@media print {
  body {
    overflow: visible !important;
  }
}

Ответ 4

У меня была такая же проблема. Оказывается, корневой тег имел display: flex. После изменения этого параметра на display: block отобразилась остальная часть содержимого. Я бы рекомендовал поднять ваше дерево DOM и проверить каждый атрибут display.

Ответ 5

Я попробовал дюжину исправлений для этого и, в конце концов, все, что мне было нужно, было:

@media print {
  body {
    display: block;
  }
}

Ответ 6

У меня была такая же проблема, потому что height из body установлен в 100%, после того как я изменил на height: auto в моем print.css, он сработал.

@media print {
  body {
    height: auto;
  }
}

Ответ 7

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

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

Поскольку у меня есть большой плавающий контейнер, я думал, что попробую. Итак, я сделал смесь из других ответов и этой статьи и придумал следующее:

body { 
    overflow: visible !important; 
    overflow-x: visible !important; 
    overflow-y: visible !important; 
}

/*this is because I use angular and have this particular layout*/
body > .fade-ng-cloak { 
    height: 100%; 
    display: block;
    flex: none;
    float: none;
}
.l-content,
.l-sidebar {
    float: none;
}

Итак, в основном:

  • Настройка тела на overflow: visible
  • Элементы, которые ведут себя как обертки к display: block, удаляют все стили flex и reset height при необходимости
  • Устранить float на длинных контейнерах

Эта смесь работала для меня! Я так счастлив, что решил поделиться с вами:)

Ответ 8

Если вы не можете преодолеть ограничения Firefox при печати, вы можете преобразовать страницу в PDF. Если вы воспользуетесь этой опцией, Prince XML - это библиотека, которую я очень рекомендую. Он имеет очень хорошую поддержку CSS, включая печатные носители.

Ответ 9

для меня (bootstrap 4) решение было

@media print {
    .row {
      display: block;
    }
}

Ответ 10

следующие работы для меня.

@media print {
  .field--body table tr {
    display: table-row-group !important;
  }
}

Ответ 11

Firefox, безусловно, НЕ сосать в любом отношении. Однако иногда он более строго придерживается стандартов, чем другие браузеры. В любом случае, чтобы прервать погоню, у меня была та же проблема, то есть firefox печатал (также просматривал) только первые 2 страницы многостраничного отчета, построенного с длинной таблицей, созданной моей веб-страницей. После некоторой отладки я узнал, что я включил большую часть содержимого отчета внутри элемента span со стилем {display: inline-block;} между прочим. Как только я удалил, что разбиение на страницы было идеально...

Ответ 12

У меня была та же проблема, и я заменил положение из position:relative position: absolute с height: 100% от верхнего div до нижнего.

Ответ 13

Я попытался добавить @media print как предложено в этом ответе, в качестве определения style для элемента <body> страницы, но Firefox (60.0 (64-разрядная версия), Windows 7 64/Pro) по-прежнему урезал распечатку веб-сайта только для первой страницы.,

Затем я заметил флажок " Упростить страницу" в верхней части экрана предварительного просмотра Firefox: enter image description here

Когда я установил этот флажок, Firefox удалил некоторые стили, но экран предварительного просмотра обновился, чтобы включить все страницы на сайте!

Я не уверен, насколько широко применимо это так YMMV, но это стоит попробовать! До сих пор я не нашел сопоставимого решения для Chrome (версия 65.0.3325.162 (Официальная сборка) (64-разрядная версия)).


PS: из дальнейшего опыта я вижу, что Simplify Page удаляет не только стилизацию, но и некоторые целые элементы, такие как примеры кода, поэтому обязательно внимательно изучите результаты перед печатью.