Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / HTML, JavaScript, VBScript, CSS Новый топик    Ответить
 При печати блока страницы выходят 5 одинаковых страниц  [new]
seg856
Member

Откуда:
Сообщений: 280
в блоке .box находятся qr-код, логин, пароль, ФИО пациента.
При печати страницы (то есть блока .box), на печать идет 5 страниц, на каждой из которой продублирован этот блок.
Где искать причину?

<style>
@media print { /* Стиль для печати */
body{
visibility: hidden;
}
/* Блок который нужно отобразить */
.box {
visibility: visible;
height:100%;
margin: 0 !important;
padding: 0 !important;
overflow: hidden;
page-break-after: auto;
}
}
</style>

...

<div class="modal-body box" >
<div id="qrcode"></div>
<table>
<tr>
<td><label>Логин</label></td><td class="col-10"><label name="login" url="pcab_archipatient" ></label></td>
</tr>
<tr>
<td><label>Пароль</label></td><td class="col-10"><label name="pwd" url="pcab_archipatient" ></label></td>

</tr>
<tr>

<td><label>Пациент</label></td><td class="col-10"><label name="patient" autocomplete="off" url="pcab_archipatient"></label></td>
</tr>

</table>

</div>
13 ноя 21, 09:38    [22395479]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13769
seg856, т.е. если я все это твое скопирую в свой пустой файл хтмл и соберусь его распечатать - оно распечатается несколько раз?
13 ноя 21, 17:48    [22395622]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
voraa
Member

Откуда:
Сообщений: 299
seg856,
Почему дублируется блок 5 раз трудно сказать, не видя всего, но предположить, почему это занимает 5 листов можно.
body{
visibility: hidden;
}
visibility: hidden - делает элемент невидимым, но он продолжает занимать тоже место, что и видимый. Если видимый body занимает 5 листов на бумаге, то он и будет занимать это место.
13 ноя 21, 23:17    [22395723]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
seg856
Member

Откуда:
Сообщений: 280
voraa, а как по-другому исключить все объекты кроме .box из печати?
14 ноя 21, 19:17    [22395940]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13769
seg856
а как по-другому исключить все объекты кроме .box из печати?

display: none;
14 ноя 21, 20:20    [22395958]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
seg856
Member

Откуда:
Сообщений: 280
krvsa,
Спасибо, помогло
14 ноя 21, 20:50    [22395964]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
seg856
Member

Откуда:
Сообщений: 280
krvsa, хотя не помогло. Блок .box не выходит на печать при таких стилях

<style>
@media print { /* Стиль для печати */

body{
/*visibility: none;*/

display: none;
}
/* Блок который нужно отобразить */
.box {
display: block;

/* height:100%;
margin: 0 !important;
padding: 0 !important;
overflow: hidden;
page-break-after: auto;*/
}
}
</style>
17 ноя 21, 10:11    [22396822]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13769
seg856, не совсем понятен твой принцип...
Ты скрываешь все body (т.е. весь документ), а потом хочешь показать какую-то часть документа...
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!--
<script src="https://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
-->
<style>
@media print {
	body {
		display: none;
	}
	#test {
		display: block;
	}
}
</style>
<script>
</script>
</head>
<body>
<p id='test'>Пример текста</p>
</body>
</html>

Такое не будет работать.
Тебе придется скрыть все элементы (до нужного вложения) кроме нужного.
17 ноя 21, 10:19    [22396825]     Ответить | Цитировать Сообщить модератору
 Re: При печати блока страницы выходят 5 одинаковых страниц  [new]
voraa
Member

Откуда:
Сообщений: 299
seg856,

Я для печати использовал такую штуку

Есть отдельный файл print.html
<!doctype html>
<html>
<head>
 <meta http-equiv="Content-type" content="text/html; charset=utf-8" lang="ru">
<meta name="viewport" content="width=device-width, initial-scale=1.0" >
<title></title>
<style>
/*
Тут можно разместить стили для печати
*/
</style>
</head>
<body>
</body>
</html>


Когда надо что то напечатать

const s = // любая строка, например, div.outerHTML

const wpr = window.open ('print.html, 'print', "left=0,top=0,width=700,height=600");

wpr.onload= ()=>{
	wpr.document.body.innerHTML = s;
	wpr.print();
}


Сообщение было отредактировано: 17 ноя 21, 18:30
17 ноя 21, 18:29    [22397153]     Ответить | Цитировать Сообщить модератору
Все форумы / HTML, JavaScript, VBScript, CSS Ответить