mirror of
https://github.com/rust-lang/mdBook
synced 2024-12-14 14:52:37 +00:00
Improve print output (#680)
* Update print styles for new sidebar behavior * Hide copy icons in print output * Wait for mathjax rendering to complete before printing * Remove old wrapping css Browsers this old are already hilariously broken, so we don't need these fallbacks. * Change mathjax script type Chrome won't execute this if it's not marked as js * Ensure page has rendered before printing In certain situations Chrome willl fire window.onLoad before it's done rendering. Add a 100ms delay to work around this.
This commit is contained in:
parent
a323620e02
commit
69fef40e57
3 changed files with 37 additions and 31 deletions
|
@ -1322,12 +1322,14 @@ html:not(.sidebar-visible) #menu-bar:not(:hover).folded > #menu-bar-sticky-conta
|
|||
.mobile-nav-chapters {
|
||||
display: none;
|
||||
}
|
||||
#page-wrapper {
|
||||
left: 0;
|
||||
overflow-y: initial;
|
||||
}
|
||||
#page-wrapper.page-wrapper {
|
||||
padding-left: 0px;
|
||||
-webkit-transform: none;
|
||||
-moz-transform: none;
|
||||
-o-transform: none;
|
||||
-ms-transform: none;
|
||||
transform: none;
|
||||
margin-left: 0px;
|
||||
overflow-y: initial;
|
||||
}
|
||||
#content {
|
||||
max-width: none;
|
||||
|
@ -1361,16 +1363,14 @@ html:not(.sidebar-visible) #menu-bar:not(:hover).folded > #menu-bar-sticky-conta
|
|||
h6 {
|
||||
page-break-inside: avoid;
|
||||
page-break-after: avoid;
|
||||
/*break-after: avoid*/
|
||||
}
|
||||
pre,
|
||||
code {
|
||||
page-break-inside: avoid;
|
||||
white-space: pre-wrap /* CSS 3 */;
|
||||
white-space: -moz-pre-wrap /* Mozilla, since 1999 */;
|
||||
white-space: -pre-wrap /* Opera 4-6 */;
|
||||
white-space: -o-pre-wrap /* Opera 7 */;
|
||||
word-wrap: break-word /* Internet Explorer 5.5+ */;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
.fa {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
.tooltiptext {
|
||||
|
|
|
@ -212,14 +212,6 @@
|
|||
</script>
|
||||
{{/if}}
|
||||
|
||||
{{#if is_print}}
|
||||
<script type="text/javascript">
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
window.print();
|
||||
})
|
||||
</script>
|
||||
{{/if}}
|
||||
|
||||
{{#if playpen_js}}
|
||||
<script src="ace.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script src="editor.js" type="text/javascript" charset="utf-8"></script>
|
||||
|
@ -246,5 +238,23 @@
|
|||
<script type="text/javascript" src="{{this}}"></script>
|
||||
{{/each}}
|
||||
|
||||
{{#if is_print}}
|
||||
{{#if mathjax_support}}
|
||||
<script type="text/javascript">
|
||||
window.addEventListener('load', function() {
|
||||
MathJax.Hub.Register.StartupHook('End', function() {
|
||||
window.setTimeout(window.print, 100);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{else}}
|
||||
<script type="text/javascript">
|
||||
window.addEventListener('load', function() {
|
||||
window.setTimeout(window.print, 100);
|
||||
});
|
||||
</script>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -7,13 +7,10 @@
|
|||
display: none
|
||||
}
|
||||
|
||||
#page-wrapper {
|
||||
left: 0;
|
||||
overflow-y: initial;
|
||||
}
|
||||
|
||||
#page-wrapper.page-wrapper {
|
||||
padding-left: 0px;
|
||||
transform: none;
|
||||
margin-left: 0px;
|
||||
overflow-y: initial;
|
||||
}
|
||||
|
||||
#content {
|
||||
|
@ -46,15 +43,14 @@
|
|||
h1, h2, h3, h4, h5, h6 {
|
||||
page-break-inside: avoid
|
||||
page-break-after: avoid
|
||||
/*break-after: avoid*/
|
||||
}
|
||||
|
||||
pre, code {
|
||||
page-break-inside: avoid
|
||||
white-space: pre-wrap /* CSS 3 */
|
||||
white-space: -moz-pre-wrap /* Mozilla, since 1999 */
|
||||
white-space: -pre-wrap /* Opera 4-6 */
|
||||
white-space: -o-pre-wrap /* Opera 7 */
|
||||
word-wrap: break-word /* Internet Explorer 5.5+ */
|
||||
white-space: pre-wrap
|
||||
}
|
||||
|
||||
.fa {
|
||||
display: none !important
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue