To answer my own question… I’ve been banging on it for a while and finally have something that works (at least for my scenario). Any further suggestions/advice is still greatly appreciated.
The relevant lines to get all scrolling content instead of chopping it off at first page:
@media print {
body {
position: static;
overflow: initial;
}
ion-nav {
overflow: initial !important;
}
.scroll-content {
position: relative;
overflow:visible!important;
}
}
Here is my entire print media query for reference.
@media print {
body {
position: static;
overflow: initial;
}
ion-nav {
overflow: initial !important;
}
.scroll-content {
position: relative;
overflow:visible!important;
}
ion-header {
display: none !important;
}
header nav, footer {
display: none;
}
button {
display: none !important;
}
ion-fab {
display: none;
}
.pane {
position: initial;
}
p a {
word-wrap: break-word;
}
}
I would also like to point out this stackoverflow answer, for how to simulate print media in chrome dev tools… makes it simple to test: