react-pdf-printer
Version:
Create pdf document using React
85 lines (70 loc) • 1.52 kB
CSS
@media print {
* {
color-adjust: exact;
print-color-adjust: exact;
-webkit-print-color-adjust: exact;
}
}
body:has([data-printer-type='static-document']) {
margin: 0;
overflow: hidden;
}
@media screen {
[data-printer-type='portal-document'] {
position: absolute;
}
}
[data-printer-type='static-document'],
[data-printer-type='portal-document'] {
--pagination-content: '';
counter-reset: printer-pagination-page printer-pagination-total var(--printer-pagination-total);
}
[data-printer-article='page'] {
height: 100vh;
overflow: hidden;
}
[data-printer-article='pages'] {
overflow-x: hidden;
}
[data-printer-article]:not(:last-child) {
break-after: page;
}
[data-printer-section='header'],
[data-printer-section='footer'] {
position: absolute;
left: 0;
right: 0;
z-index: 1;
}
[data-printer-section='main'] {
z-index: 0;
}
[data-printer-section='header'] {
counter-increment: printer-pagination-page;
}
[data-printer-component='pagination']::before {
content: var(--printer-pagination-content);
}
[data-printer-placeholder='true'] {
width: 9999999999px ;
clear: both ;
}
@media print {
[data-printer-screenonly='true'] {
visibility: hidden;
overflow: hidden;
height: 0;
}
}
@media screen {
[data-printer-printonly='true'] {
visibility: hidden;
overflow: hidden;
height: 0;
}
}
@media print {
body:has(> [data-printer-type='portal']) > :not([data-printer-type='portal']) {
display: none;
}
}