MediaWiki:Print.css
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* =========================== Softwear — Print stylesheet A5 portrait, minimal margins =========================== */ /* 1) Font face (print-safe) */ @font-face { font-family: 'HALColant-TextRegular'; src: url('/fonts/HALColant-TextRegular.woff2?v=20250820') format('woff2'), url('/fonts/HALColant-TextRegular.woff?v=20250820') format('woff'); font-weight: normal; font-style: normal; font-display: swap; } /* 2) Browser print color fidelity */ * { -webkit-print-color-adjust: exact; print-color-adjust: exact; } /* 3) Base print visibility & typography */ .print-only { display: block !important; } /* ensure print layout is visible */ html, body { margin: 0; padding: 0; font-family: 'HALColant-TextRegular', Georgia, "Times New Roman", serif; color: #111; } body { color: #292828 !important; } /* 4) Page size and margins */ @page { size: A5 portrait; margin: 2.5mm; /* outer paper margin */ } /* 5) Main wrapper padding */ .entry-wrapper.print-a5 { width: 100%; box-sizing: border-box; padding: 2.5mm; /* inner content padding */ } /* 6) Avoid splitting key sections across pages (gentle) */ #article-title, .article-title-link, .article-images, .article-metadata, .article-description, .article-reflection, .article-external-reference, .article-quote { page-break-inside: avoid; break-inside: avoid; } /* 7) Titles & people */ .article-title { font-size: 22px; line-height: 24px; letter-spacing: 0.8px; text-align: center; color: #292828 !important; margin: 0; } .article-people { font-size: 22px; line-height: 28px; letter-spacing: 0.8px; text-align: center; text-decoration: underline; color: #292828 !important; margin: 0; padding-top: 15px; } .article-people a { text-decoration: underline; color: #292828 !important; } /* 8) Hairline rule under entry number (crisp) */ .article-entry-number { font-size: 16px; line-height: 23px; letter-spacing: 0; margin: 0; padding-bottom: 4px; border-bottom: none; background-image: linear-gradient(#000, #000); background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 0.5px; /* hairline */ } /* 9) Link row ([PDF⤴] [WEB⤴]) centered with hairline */ .link-pdf { text-align: center; color: #292828 !important; text-decoration: none; margin: 4px 0 0 0; padding: 0; border-bottom: none; background-image: linear-gradient(#000, #000); background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 0.5px; } .link-pdf a, .link-pdf p { display: inline-block; text-decoration: none; color: #292828 !important; margin: 0 !important; padding: 0 !important; } /* 10) Type line with hairline */ .article-type { font-size: 16px; line-height: 1; letter-spacing: 0; margin: 0; padding: 7px 0; color: #292828 !important; border-bottom: none; background-image: linear-gradient(#000, #000); background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 0.5px; } .article-type a { text-decoration: none; display: inline-block; color: #292828 !important; } /* 11) Metadata grid (no margins/paddings) */ .article-metadata, .article-metadata * { margin: 0 !important; border: none; background: none; } .article-metadata { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2mm; padding: 11px 0 7px 0; line-height: 1 !important; /* hairline is handled by wrappers; keep none here by default (wrapper below draws the single line) */ border-bottom: none; background-image: none; } .article-metadata-label { font-size: 13px; text-transform: uppercase; letter-spacing: 0.3px; } .article-metadata-value { font-size: 15px; text-transform: capitalize; } .article-metadata-value a { color: #292828 !important; text-decoration: none; } /* 12) Images & caption (no gaps) */ .article-images { margin: 0 !important; padding: 0 !important; /* hairline off here; wrapper will draw it */ border-bottom: none; background-image: none; } .article-images .image-container { display: inline-flex; flex-direction: column; /* stack image then caption */ align-items: flex-start; /* left-align image & caption */ margin: 0 !important; padding: 0 !important; } .article-images .image-container img, .image-container img { display: block; max-height: 85mm; /* cap instead of fixed height */ height: auto; width: auto; max-width: 100%; margin: 0 !important; padding: 0 !important; object-fit: contain; line-height: 0; } .caption-image1 { margin: 0 !important; padding: 0 0 11px 0 !important; /* small breathing room under caption */ line-height: 1 !important; font-size: 9pt; color: #555; text-align: left; width: 100%; } .caption-image1:empty { display: none; } /* 13) Kill UA margins from Vector paragraphs */ .vector-body p { margin: 0 !important; padding: 0 !important; } /* 14) Section wrappers: draw the ONLY hairline here */ .print-sec { margin: 0; padding: 0 0 7px 0; /* room for hairline */ border-bottom: none; background-image: linear-gradient(#000, #000); background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 0.5px; /* hairline */ } .print-sec + .print-sec { margin-top: 10px !important; } /* spacing between optional sections */ /* Avoid extra gap above the first .print-sec after metadata/images */ .article-metadata + .print-sec, .article-images + .print-sec { margin-top: 4mm; } /* 15) Labels & bodies inside wrappers */ .article-label-description, .article-label-reflection, .article-label-external-reference, .article-label-quote, .article-label-modification-date { text-transform: uppercase; margin: 11px 0 0 0 !important; padding: 0 !important; text-indent: 35px; line-height: 1; font-size: 14px; letter-spacing: 0.5px; /* prevent a break RIGHT AFTER the label (no orphan label) */ break-after: avoid; page-break-after: avoid; } .article-description, .article-reflection, .article-external-reference, .article-quote, .article-mod-line { text-indent: 35px; line-height: 1.3; font-size: 20px; letter-spacing: 0.8px; margin-top: 0 !important; padding: 0 !important; /* let long content flow normally; avoid hard blocking */ page-break-inside: auto; break-inside: auto; /* hairline OFF inside; wrapper draws it */ background-image: none !important; border-bottom: none !important; } /* keep label + content together */ .print-sec > .article-label-description + .article-description, .print-sec > .article-label-reflection + .article-reflection, .print-sec > .article-label-external-reference + .article-external-reference, .print-sec > .article-label-quote + .article-quote, .print-sec > .article-label-modification-date + .article-mod-line { break-before: avoid; page-break-before: avoid; } /* gentle widows/orphans control on the whole content */ #article-content { orphans: 2; widows: 2; } /* 16) Quote and “mod line” styles */ .article-quote { font-size: 26px; line-height: 1; letter-spacing: 1.2px; font-style: italic; } .article-mod-line { white-space: nowrap; color: grey; line-height: 1; font-size: 14px; letter-spacing: 0.5px; text-indent: 35px; } .article-mod-line > span { display: inline; margin: 0; padding: 0; } .article-mod-line > span + span { margin-left: 6px; } .article-modification-date { font-size: 15px; letter-spacing: 0.5px; } /* 17) Link handling for print */ a[href]:after { content: none !important; } /* no raw URL echo */ .article-external-reference a { word-break: break-word; overflow-wrap: anywhere; text-decoration: none; color: #292828 !important; font-size: 17px; line-height: 1; letter-spacing: 0; } /* 18) SINGLE HAIRLINE via wrapper — ensure no duplicates (safety overrides; keep at the end) */ .article-description, .article-reflection, .article-external-reference, .article-quote, .article-mod-line, .article-images { background-image: none !important; border-bottom: none !important; padding-bottom: 0 !important; }