I’ll build this as a full advanced print.css utility file for RX Theme, focused on clean medical-article printing, hiding web-only UI, preserving readable content, and avoiding wasted paper.
My dear friend, create this file:
assets/static/static-css/utilities/print.css
Then paste this full advanced print CSS:
/*!
Theme Name: RX Theme
File: assets/static/static-css/utilities/print.css
Purpose: Advanced print stylesheet for RX Theme
Author: RxHarun
Description:
This file optimizes RX Theme pages, posts, medical articles, documentation,
author pages, and content pages for clean printing and PDF saving.
*/
/* =========================================================
01. PRINT PAGE SETUP
========================================================= */
@page {
size: auto;
margin: 18mm 16mm 20mm 16mm;
}
@page :first {
margin-top: 20mm;
}
@media print {
/* =========================================================
02. ROOT PRINT VARIABLES
========================================================= */
:root {
--rx-print-font-family: Georgia, "Times New Roman", Times, serif;
--rx-print-ui-font-family: Arial, Helvetica, sans-serif;
--rx-print-text-color: #000;
--rx-print-muted-color: #444;
--rx-print-border-color: #999;
--rx-print-light-border-color: #ddd;
--rx-print-background: #fff;
--rx-print-link-color: #000;
--rx-print-font-size: 11.5pt;
--rx-print-line-height: 1.45;
--rx-print-heading-line-height: 1.25;
--rx-print-content-width: 100%;
}
/* =========================================================
03. GLOBAL RESET FOR PRINT
========================================================= */
*,
*::before,
*::after {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
animation: none !important;
transition: none !important;
filter: none !important;
color-adjust: exact;
-webkit-print-color-adjust: exact;
print-color-adjust: exact;
}
html {
background: var(--rx-print-background) !important;
color: var(--rx-print-text-color) !important;
font-size: 100% !important;
overflow: visible !important;
}
body {
background: var(--rx-print-background) !important;
color: var(--rx-print-text-color) !important;
font-family: var(--rx-print-font-family) !important;
font-size: var(--rx-print-font-size) !important;
line-height: var(--rx-print-line-height) !important;
margin: 0 !important;
padding: 0 !important;
width: auto !important;
min-width: 0 !important;
max-width: none !important;
overflow: visible !important;
}
body,
.rx-site,
.site,
.site-content,
.rx-site-content,
.rx-main,
main,
article,
.entry-content,
.post-content,
.page-content {
display: block !important;
float: none !important;
position: static !important;
width: auto !important;
max-width: none !important;
min-width: 0 !important;
height: auto !important;
min-height: 0 !important;
max-height: none !important;
overflow: visible !important;
}
iframe,
video,
audio,
canvas,
svg {
max-width: 100% !important;
}
/* =========================================================
04. REMOVE WEB-ONLY ELEMENTS
========================================================= */
header,
footer,
nav,
aside,
form,
button,
input,
select,
textarea,
dialog,
iframe,
video,
audio,
canvas,
embed,
object,
noscript,
script,
style,
.site-header,
.site-footer,
.rx-header,
.rx-footer,
.rx-topbar,
.rx-navbar,
.rx-mobile-menu,
.rx-offcanvas,
.rx-sidebar,
.rx-widget-area,
.rx-search,
.rx-search-form,
.rx-comments,
.comments-area,
.comment-respond,
.comment-form,
.navigation,
.post-navigation,
.posts-navigation,
.pagination,
.page-links,
.breadcrumb,
.breadcrumbs,
.rx-breadcrumbs,
.rx-share,
.share-buttons,
.social-share,
.social-icons,
.rx-related-posts,
.related-posts,
.rx-ad,
.rx-ads,
.advertisement,
.ads,
.ad,
.sponsored,
.cookie-banner,
.cookie-notice,
.modal,
.popup,
.newsletter,
.newsletter-form,
.subscribe-box,
.back-to-top,
.scroll-to-top,
.floating-button,
.floating-share,
.sticky-header,
.sticky-sidebar,
.rx-loader,
.preloader,
.skip-link,
.screen-reader-text,
.wp-block-search,
.wp-block-buttons,
.wp-block-button,
.wp-block-embed,
.wp-block-video,
.wp-block-audio,
.wp-block-social-links,
.wp-block-comments,
.wp-block-post-navigation-link,
.wp-block-query-pagination,
.wp-block-loginout,
.wp-block-calendar,
.wp-block-rss,
.wp-block-tag-cloud,
.no-print,
[data-print="hide"],
[aria-hidden="true"].no-print {
display: none !important;
visibility: hidden !important;
}
/* =========================================================
05. KEEP IMPORTANT CONTENT VISIBLE
========================================================= */
.print-only,
.rx-print-only,
[data-print="show"] {
display: block !important;
visibility: visible !important;
}
.entry-content,
.post-content,
.page-content,
.rx-content,
.rx-article,
.rx-medical-article,
.rx-main-content {
display: block !important;
visibility: visible !important;
}
/* =========================================================
06. TYPOGRAPHY
========================================================= */
p,
li,
dd,
dt,
blockquote,
figcaption,
table,
address {
color: var(--rx-print-text-color) !important;
font-family: var(--rx-print-font-family) !important;
font-size: var(--rx-print-font-size) !important;
line-height: var(--rx-print-line-height) !important;
}
p {
margin: 0 0 9pt !important;
orphans: 3;
widows: 3;
}
strong,
b {
font-weight: 700 !important;
}
em,
i {
font-style: italic !important;
}
small {
font-size: 9pt !important;
}
mark {
color: #000 !important;
background: transparent !important;
border-bottom: 1px solid #000 !important;
}
abbr[title] {
text-decoration: none !important;
border-bottom: 1px dotted #000 !important;
}
abbr[title]::after {
content: " (" attr(title) ")";
font-size: 9pt;
}
hr {
border: 0 !important;
border-top: 1px solid var(--rx-print-border-color) !important;
margin: 16pt 0 !important;
}
/* =========================================================
07. HEADINGS
========================================================= */
h1,
h2,
h3,
h4,
h5,
h6 {
color: #000 !important;
font-family: var(--rx-print-ui-font-family) !important;
font-weight: 700 !important;
line-height: var(--rx-print-heading-line-height) !important;
page-break-after: avoid !important;
break-after: avoid !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
h1 {
font-size: 22pt !important;
margin: 0 0 12pt !important;
}
h2 {
font-size: 17pt !important;
margin: 18pt 0 8pt !important;
border-bottom: 1px solid var(--rx-print-border-color) !important;
padding-bottom: 3pt !important;
}
h3 {
font-size: 14pt !important;
margin: 14pt 0 6pt !important;
}
h4 {
font-size: 12.5pt !important;
margin: 12pt 0 5pt !important;
}
h5 {
font-size: 11.5pt !important;
margin: 10pt 0 4pt !important;
}
h6 {
font-size: 10.5pt !important;
margin: 9pt 0 4pt !important;
text-transform: uppercase !important;
letter-spacing: 0.03em !important;
}
/* =========================================================
08. ARTICLE TITLE AND META
========================================================= */
.entry-title,
.post-title,
.page-title,
.rx-entry-title,
.rx-article-title {
color: #000 !important;
font-size: 23pt !important;
line-height: 1.2 !important;
margin: 0 0 10pt !important;
padding: 0 !important;
border: 0 !important;
}
.entry-meta,
.post-meta,
.rx-entry-meta,
.rx-post-meta,
.byline,
.posted-on,
.updated-on,
.author-name,
.reviewed-by,
.medically-reviewed,
.rx-medical-review {
color: var(--rx-print-muted-color) !important;
font-family: var(--rx-print-ui-font-family) !important;
font-size: 9pt !important;
line-height: 1.35 !important;
margin: 0 0 10pt !important;
}
.entry-meta a,
.post-meta a,
.rx-entry-meta a {
color: #000 !important;
text-decoration: none !important;
}
/* =========================================================
09. LINKS
========================================================= */
a,
a:visited {
color: var(--rx-print-link-color) !important;
text-decoration: underline !important;
word-break: break-word !important;
}
a[href^="#"]::after,
a[href^="javascript:"]::after,
a[href^="mailto:"]::after,
a[href^="tel:"]::after,
.site-title a::after,
.custom-logo-link::after,
.wp-block-button__link::after {
content: "" !important;
}
.entry-content a[href^="http"]::after,
.post-content a[href^="http"]::after,
.page-content a[href^="http"]::after,
.rx-content a[href^="http"]::after {
content: " (" attr(href) ")";
font-size: 8.5pt;
font-weight: 400;
text-decoration: none;
word-break: break-all;
}
.entry-content a[href^="/"]::after,
.post-content a[href^="/"]::after,
.page-content a[href^="/"]::after {
content: " (" attr(href) ")";
font-size: 8.5pt;
text-decoration: none;
}
/* =========================================================
10. LISTS
========================================================= */
ul,
ol {
margin: 0 0 10pt 18pt !important;
padding: 0 !important;
}
li {
margin: 0 0 5pt !important;
padding: 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
ul ul,
ul ol,
ol ul,
ol ol {
margin-top: 5pt !important;
margin-bottom: 5pt !important;
}
dl {
margin: 0 0 10pt !important;
}
dt {
font-weight: 700 !important;
margin-top: 7pt !important;
}
dd {
margin: 0 0 7pt 16pt !important;
}
/* =========================================================
11. BLOCKQUOTES AND NOTES
========================================================= */
blockquote,
.wp-block-quote,
.rx-note,
.rx-info-box,
.rx-warning-box,
.rx-alert,
.rx-medical-note,
.rx-clinical-note {
border: 1px solid var(--rx-print-border-color) !important;
border-left: 4px solid #000 !important;
margin: 12pt 0 !important;
padding: 8pt 10pt !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
blockquote p:last-child,
.wp-block-quote p:last-child {
margin-bottom: 0 !important;
}
cite {
color: var(--rx-print-muted-color) !important;
display: block !important;
font-size: 9pt !important;
margin-top: 5pt !important;
}
/* =========================================================
12. CODE AND PRE
========================================================= */
code,
kbd,
samp {
color: #000 !important;
font-family: Consolas, "Courier New", monospace !important;
font-size: 9.5pt !important;
border: 1px solid var(--rx-print-light-border-color) !important;
padding: 1pt 3pt !important;
}
pre {
color: #000 !important;
font-family: Consolas, "Courier New", monospace !important;
font-size: 9pt !important;
line-height: 1.35 !important;
white-space: pre-wrap !important;
word-wrap: break-word !important;
border: 1px solid var(--rx-print-border-color) !important;
padding: 8pt !important;
margin: 12pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
overflow: visible !important;
}
pre code {
border: 0 !important;
padding: 0 !important;
}
/* =========================================================
13. IMAGES AND FIGURES
========================================================= */
img {
max-width: 100% !important;
height: auto !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
border: 0 !important;
}
figure,
.wp-block-image,
.wp-caption,
.gallery,
.rx-image-box {
display: block !important;
max-width: 100% !important;
margin: 12pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
figcaption,
.wp-caption-text,
.gallery-caption {
color: var(--rx-print-muted-color) !important;
font-family: var(--rx-print-ui-font-family) !important;
font-size: 8.5pt !important;
line-height: 1.35 !important;
margin-top: 4pt !important;
text-align: center !important;
}
.custom-logo,
.site-logo,
.rx-logo {
max-width: 140px !important;
height: auto !important;
}
/* =========================================================
14. TABLES
========================================================= */
table {
width: 100% !important;
border-collapse: collapse !important;
border-spacing: 0 !important;
margin: 12pt 0 !important;
page-break-inside: auto !important;
break-inside: auto !important;
}
thead {
display: table-header-group !important;
}
tfoot {
display: table-footer-group !important;
}
tr {
page-break-inside: avoid !important;
break-inside: avoid !important;
}
th,
td {
color: #000 !important;
border: 1px solid var(--rx-print-border-color) !important;
padding: 5pt 6pt !important;
text-align: left !important;
vertical-align: top !important;
font-size: 9.5pt !important;
line-height: 1.35 !important;
}
th {
font-weight: 700 !important;
}
caption {
caption-side: top !important;
color: #000 !important;
font-weight: 700 !important;
margin-bottom: 5pt !important;
text-align: left !important;
}
.wp-block-table {
overflow: visible !important;
}
.wp-block-table table {
width: 100% !important;
}
/* =========================================================
15. WORDPRESS BLOCKS
========================================================= */
.wp-block-group,
.wp-block-columns,
.wp-block-column,
.wp-block-media-text,
.wp-block-cover,
.wp-block-cover-image {
display: block !important;
width: auto !important;
max-width: none !important;
min-height: 0 !important;
height: auto !important;
padding: 0 !important;
margin-left: 0 !important;
margin-right: 0 !important;
}
.wp-block-cover,
.wp-block-cover-image {
border: 1px solid var(--rx-print-light-border-color) !important;
padding: 10pt !important;
}
.wp-block-cover__inner-container {
color: #000 !important;
width: auto !important;
}
.wp-block-separator {
border: 0 !important;
border-top: 1px solid var(--rx-print-border-color) !important;
margin: 14pt 0 !important;
}
.wp-block-pullquote {
border-top: 2px solid #000 !important;
border-bottom: 2px solid #000 !important;
padding: 10pt 0 !important;
margin: 14pt 0 !important;
}
.wp-block-pullquote blockquote {
border: 0 !important;
padding: 0 !important;
}
.alignleft,
.alignright,
.aligncenter,
.alignwide,
.alignfull {
float: none !important;
display: block !important;
margin: 12pt auto !important;
max-width: 100% !important;
width: auto !important;
}
/* =========================================================
16. MEDICAL ARTICLE SPECIAL SECTIONS
========================================================= */
.rx-medical-disclaimer,
.medical-disclaimer,
.rx-disclaimer {
border: 1px solid #000 !important;
padding: 8pt 10pt !important;
margin: 12pt 0 !important;
font-size: 9.5pt !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.rx-medical-disclaimer::before,
.medical-disclaimer::before,
.rx-disclaimer::before {
content: "Medical disclaimer: ";
font-weight: 700;
}
.rx-key-points,
.key-points,
.rx-summary-box,
.rx-quick-summary,
.rx-clinical-summary {
border: 1px solid #000 !important;
padding: 9pt 10pt !important;
margin: 12pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.rx-key-points h2,
.key-points h2,
.rx-summary-box h2,
.rx-quick-summary h2,
.rx-clinical-summary h2 {
margin-top: 0 !important;
border-bottom: 1px solid #000 !important;
}
.rx-definition,
.rx-causes,
.rx-symptoms,
.rx-diagnosis,
.rx-treatment,
.rx-prevention,
.rx-faq,
.rx-references {
page-break-inside: auto !important;
break-inside: auto !important;
}
.rx-faq-item,
.faq-item,
.schema-faq-section {
page-break-inside: avoid !important;
break-inside: avoid !important;
margin-bottom: 10pt !important;
}
.schema-faq-question,
.faq-question {
font-weight: 700 !important;
}
.schema-faq-answer,
.faq-answer {
margin-top: 4pt !important;
}
/* =========================================================
17. REFERENCES AND CITATIONS
========================================================= */
sup,
sub {
font-size: 75% !important;
line-height: 0 !important;
}
sup {
vertical-align: super !important;
}
sub {
vertical-align: sub !important;
}
.rx-reference-list,
.references,
.citation-list,
.wp-block-footnotes,
.footnotes {
font-size: 9pt !important;
line-height: 1.35 !important;
page-break-before: auto !important;
}
.rx-reference-list li,
.references li,
.citation-list li,
.wp-block-footnotes li,
.footnotes li {
font-size: 9pt !important;
margin-bottom: 5pt !important;
word-break: break-word !important;
}
.rx-citation,
.citation,
.reference-link {
font-size: 8.5pt !important;
}
/* =========================================================
18. PAGE BREAK UTILITIES
========================================================= */
.rx-print-page-break-before,
.print-page-break-before,
.page-break-before {
page-break-before: always !important;
break-before: page !important;
}
.rx-print-page-break-after,
.print-page-break-after,
.page-break-after {
page-break-after: always !important;
break-after: page !important;
}
.rx-print-page-break-avoid,
.print-page-break-avoid,
.page-break-avoid,
.avoid-break {
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.rx-print-page-break-auto,
.print-page-break-auto {
page-break-inside: auto !important;
break-inside: auto !important;
}
h1,
h2,
h3,
h4,
h5,
h6,
img,
table,
blockquote,
pre,
figure,
.rx-card,
.card,
.rx-box {
page-break-inside: avoid !important;
break-inside: avoid !important;
}
/* =========================================================
19. CARDS, BOXES, PANELS
========================================================= */
.rx-card,
.card,
.rx-box,
.box,
.panel,
.rx-panel,
.rx-content-box,
.rx-feature-box {
border: 1px solid var(--rx-print-border-color) !important;
padding: 9pt 10pt !important;
margin: 12pt 0 !important;
border-radius: 0 !important;
}
.rx-card-title,
.card-title,
.rx-box-title {
font-weight: 700 !important;
margin-bottom: 5pt !important;
}
/* =========================================================
20. GRID AND FLEX RESET
========================================================= */
.row,
.columns,
.grid,
.rx-grid,
.rx-row,
.rx-columns,
.rx-layout,
.rx-container,
.container,
.wrap,
.wrapper {
display: block !important;
width: auto !important;
max-width: none !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 0 !important;
padding-right: 0 !important;
}
[class*="col-"],
[class*="column"],
[class*="grid"],
[class*="flex"] {
float: none !important;
width: auto !important;
max-width: none !important;
min-width: 0 !important;
}
/* =========================================================
21. POSITION RESET
========================================================= */
.fixed,
.sticky,
.is-sticky,
.position-fixed,
.position-sticky,
[style*="position: fixed"],
[style*="position:fixed"],
[style*="position: sticky"],
[style*="position:sticky"] {
position: static !important;
top: auto !important;
right: auto !important;
bottom: auto !important;
left: auto !important;
}
/* =========================================================
22. WIDTH AND SPACING UTILITIES
========================================================= */
.rx-print-full-width,
.print-full-width {
width: 100% !important;
max-width: 100% !important;
}
.rx-print-no-margin,
.print-no-margin {
margin: 0 !important;
}
.rx-print-no-padding,
.print-no-padding {
padding: 0 !important;
}
.rx-print-compact p,
.print-compact p {
margin-bottom: 5pt !important;
}
.rx-print-compact li,
.print-compact li {
margin-bottom: 3pt !important;
}
/* =========================================================
23. COLORS FOR PRINT
========================================================= */
.has-background,
.has-text-color,
.has-link-color,
[class*="has-"][class*="-background-color"],
[class*="has-"][class*="-color"] {
color: #000 !important;
background: transparent !important;
}
.text-muted,
.rx-text-muted,
.muted {
color: var(--rx-print-muted-color) !important;
}
.text-primary,
.text-secondary,
.text-success,
.text-danger,
.text-warning,
.text-info,
.rx-text-primary,
.rx-text-secondary,
.rx-text-success,
.rx-text-danger,
.rx-text-warning,
.rx-text-info {
color: #000 !important;
}
/* =========================================================
24. FORMS PRINT FALLBACK
========================================================= */
.rx-print-forms form,
.print-forms form {
display: block !important;
visibility: visible !important;
}
.rx-print-forms input,
.rx-print-forms textarea,
.rx-print-forms select,
.print-forms input,
.print-forms textarea,
.print-forms select {
display: block !important;
visibility: visible !important;
border: 1px solid #000 !important;
padding: 4pt !important;
min-height: 18pt !important;
color: #000 !important;
}
/* =========================================================
25. DETAILS / ACCORDION
========================================================= */
details {
display: block !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
details[open],
details {
height: auto !important;
}
details > summary {
font-weight: 700 !important;
cursor: default !important;
list-style: none !important;
}
details > summary::marker,
details > summary::-webkit-details-marker {
display: none !important;
}
details:not([open]) > *:not(summary) {
display: block !important;
}
.accordion-content,
.collapse,
.collapsed,
.tab-content,
.tabs-panel {
display: block !important;
visibility: visible !important;
height: auto !important;
max-height: none !important;
overflow: visible !important;
}
.tabs-nav,
.accordion-button,
.accordion-header {
display: none !important;
}
/* =========================================================
26. RX TABLE OF CONTENTS PRINT
========================================================= */
.rx-toc,
.table-of-contents,
.toc {
border: 1px solid #000 !important;
padding: 9pt 10pt !important;
margin: 12pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.rx-toc::before,
.table-of-contents::before,
.toc::before {
content: "Contents";
display: block;
font-family: var(--rx-print-ui-font-family);
font-size: 12pt;
font-weight: 700;
margin-bottom: 6pt;
}
.rx-toc a::after,
.table-of-contents a::after,
.toc a::after {
content: "" !important;
}
/* =========================================================
27. PRINT HEADER / FOOTER CUSTOM BLOCKS
========================================================= */
.rx-print-header,
.print-header {
display: block !important;
border-bottom: 1px solid #000 !important;
padding-bottom: 6pt !important;
margin-bottom: 12pt !important;
font-family: var(--rx-print-ui-font-family) !important;
font-size: 9pt !important;
}
.rx-print-footer,
.print-footer {
display: block !important;
border-top: 1px solid #000 !important;
padding-top: 6pt !important;
margin-top: 12pt !important;
font-family: var(--rx-print-ui-font-family) !important;
font-size: 8.5pt !important;
color: var(--rx-print-muted-color) !important;
}
.rx-print-url::after,
.print-url::after {
content: attr(data-url);
}
.rx-print-date::after,
.print-date::after {
content: attr(data-date);
}
/* =========================================================
28. AUTHOR BOX
========================================================= */
.author-box,
.rx-author-box,
.rx-reviewer-box,
.reviewer-box {
border: 1px solid #000 !important;
padding: 9pt 10pt !important;
margin: 12pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.author-avatar,
.avatar {
max-width: 60px !important;
height: auto !important;
float: left !important;
margin: 0 8pt 6pt 0 !important;
}
/* =========================================================
29. HIDE EMPTY ELEMENTS
========================================================= */
p:empty,
div:empty,
span:empty,
section:empty,
article:empty {
display: none !important;
}
/* =========================================================
30. ACCESSIBILITY PRINT SUPPORT
========================================================= */
[hidden] {
display: none !important;
}
[aria-expanded="false"] + .accordion-content,
[aria-hidden="true"]:not(.print-only):not(.rx-print-only) {
display: block !important;
visibility: visible !important;
}
.sr-only,
.screen-reader-text {
position: static !important;
width: auto !important;
height: auto !important;
margin: 0 !important;
overflow: visible !important;
clip: auto !important;
white-space: normal !important;
}
/* =========================================================
31. MEDICAL WARNING LABELS
========================================================= */
.rx-emergency-note,
.emergency-note {
border: 2px solid #000 !important;
padding: 10pt !important;
margin: 12pt 0 !important;
font-weight: 700 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
.rx-emergency-note::before,
.emergency-note::before {
content: "Important: ";
}
.rx-drug-warning,
.drug-warning,
.rx-side-effects,
.side-effects {
border: 1px solid #000 !important;
padding: 8pt 10pt !important;
margin: 10pt 0 !important;
page-break-inside: avoid !important;
break-inside: avoid !important;
}
/* =========================================================
32. PRINT UTILITY CLASSES
========================================================= */
.rx-print-block,
.print-block {
display: block !important;
}
.rx-print-inline,
.print-inline {
display: inline !important;
}
.rx-print-inline-block,
.print-inline-block {
display: inline-block !important;
}
.rx-print-hidden,
.print-hidden {
display: none !important;
}
.rx-print-text-left,
.print-text-left {
text-align: left !important;
}
.rx-print-text-center,
.print-text-center {
text-align: center !important;
}
.rx-print-text-right,
.print-text-right {
text-align: right !important;
}
.rx-print-bold,
.print-bold {
font-weight: 700 !important;
}
.rx-print-normal,
.print-normal {
font-weight: 400 !important;
}
.rx-print-small,
.print-small {
font-size: 9pt !important;
}
.rx-print-large,
.print-large {
font-size: 13pt !important;
}
.rx-print-border,
.print-border {
border: 1px solid #000 !important;
}
.rx-print-border-top,
.print-border-top {
border-top: 1px solid #000 !important;
}
.rx-print-border-bottom,
.print-border-bottom {
border-bottom: 1px solid #000 !important;
}
/* =========================================================
33. BODY PRINT STATE HELPERS
========================================================= */
body.print-clean header,
body.print-clean footer,
body.print-clean nav,
body.print-clean aside {
display: none !important;
}
body.print-with-sidebar aside,
body.print-with-sidebar .rx-sidebar {
display: block !important;
visibility: visible !important;
border-top: 1px solid #000 !important;
margin-top: 12pt !important;
padding-top: 10pt !important;
}
body.print-no-links a::after {
content: "" !important;
}
body.print-no-images img,
body.print-no-images figure {
display: none !important;
}
body.print-large-text {
font-size: 13pt !important;
}
body.print-large-text p,
body.print-large-text li {
font-size: 13pt !important;
line-height: 1.55 !important;
}
/* =========================================================
34. PRINT FOR MEDICAL LONG ARTICLES
========================================================= */
.single-post .entry-content,
.single .entry-content,
.rx-long-medical-article,
.rx-seo-medical-article {
max-width: none !important;
width: 100% !important;
}
.rx-long-medical-article h2,
.rx-seo-medical-article h2 {
page-break-before: auto !important;
}
.rx-long-medical-article h2:not(:first-child),
.rx-seo-medical-article h2:not(:first-child) {
margin-top: 20pt !important;
}
.rx-long-medical-article .rx-references,
.rx-seo-medical-article .rx-references {
page-break-before: always !important;
break-before: page !important;
}
/* =========================================================
35. PRINT URL FOOTNOTE SYSTEM
========================================================= */
.rx-print-source,
.print-source {
color: var(--rx-print-muted-color) !important;
font-size: 8.5pt !important;
font-family: var(--rx-print-ui-font-family) !important;
margin-top: 8pt !important;
}
.rx-print-source::before,
.print-source::before {
content: "Source: ";
font-weight: 700;
}
/* =========================================================
36. WOOCOMMERCE / PRODUCT PRINT CLEANUP
========================================================= */
.woocommerce-breadcrumb,
.woocommerce-result-count,
.woocommerce-ordering,
.woocommerce-pagination,
.woocommerce-product-gallery__trigger,
.single_add_to_cart_button,
.cart,
.quantity,
.product_meta,
.related.products,
.upsells.products,
.cross-sells,
.woocommerce-tabs ul.tabs {
display: none !important;
}
.woocommerce div.product,
.woocommerce-page div.product {
display: block !important;
width: auto !important;
}
.woocommerce div.product div.images,
.woocommerce div.product div.summary {
float: none !important;
width: auto !important;
}
/* =========================================================
37. PRINT SAFETY FOR ADS / TRACKERS / THIRD-PARTY
========================================================= */
[id*="ad"],
[class*="ad-"],
[class*="-ad"],
[class*="ads"],
[id*="ads"],
[class*="banner"],
[id*="banner"],
[class*="tracking"],
[id*="tracking"],
[class*="analytics"],
[id*="analytics"] {
display: none !important;
}
.rx-medical-article [class*="advice"],
.rx-medical-article [class*="diagnosis"],
.rx-medical-article [class*="treatment"] {
display: initial;
}
/* =========================================================
38. FINAL OVERFLOW FIXES
========================================================= */
body,
html,
.site,
.rx-site,
.site-content,
.rx-site-content,
.content-area,
.rx-content-area,
.entry-content,
.post-content,
.page-content {
overflow-x: visible !important;
overflow-y: visible !important;
}
* {
max-width: 100% !important;
}
table,
pre,
code {
word-break: break-word !important;
overflow-wrap: anywhere !important;
}
/* =========================================================
39. FINAL PRINT QUALITY
========================================================= */
body::before,
body::after {
display: none !important;
}
.entry-content > *:first-child,
.post-content > *:first-child,
.page-content > *:first-child {
margin-top: 0 !important;
}
.entry-content > *:last-child,
.post-content > *:last-child,
.page-content > *:last-child {
margin-bottom: 0 !important;
}
}
Then enqueue it in your RX Theme functions.php or your enqueue file:
function rx_theme_enqueue_print_css() {
wp_enqueue_style(
'rx-theme-print',
get_template_directory_uri() . '/assets/static/static-css/utilities/print.css',
array(),
wp_get_theme()->get( 'Version' ),
'print'
);
}
add_action( 'wp_enqueue_scripts', 'rx_theme_enqueue_print_css' );
Best structure:
assets/
└── static/
└── static-css/
└── utilities/
└── print.css
This file is especially good for RX Theme medical articles because it hides header, footer, ads, sidebar, comments, buttons, popups, videos, search forms, and social share buttons during printing while keeping the main article, headings, tables, references, FAQ, images, warnings, and medical disclaimer clean and readable.