Files
Notes/Documents/Arbeit/IFN/Programmieren WiSe 25 26/Misc/print.css

210 lines
3.3 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Mono:wght@100..900&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
/* Print stylesheet for Pandoc PDF conversion - German University Standards */
/* Base styling */
body {
font-family: 'Roboto', sans-serif;
font-size: 12pt;
line-height: 1.5;
color: #000;
background: #fff;
margin: 0;
padding: 0;
text-align: justify;
hyphens: auto;
-webkit-hyphens: auto;
-moz-hyphens: auto;
}
/* Title - hide it */
h1.title {
display: none;
}
/* Headings */
h1, h2, h3, h4, h5, h6 {
margin-top: 1em;
margin-bottom: 0.5em;
font-weight: bold;
color: #000;
page-break-after: avoid;
text-align: left;
}
h1 {
font-size: 18pt;
border-bottom: 1pt solid #000;
padding-bottom: 0.3em;
}
h2 {
font-size: 14pt;
margin-top: 1.2em;
}
h3 {
font-size: 12pt;
}
/* Paragraphs and text */
p {
margin: 1em 0;
orphans: 3;
widows: 3;
text-align: justify;
hyphens: auto;
-webkit-hyphens: auto;
-moz-hyphens: auto;
}
/* Links - visible but not underlined */
a {
color: inherit;
text-decoration: none;
}
a[href]::after {
content: "";
}
/* Tables */
table {
width: 100%;
border-collapse: collapse;
margin: 1em 0;
page-break-inside: avoid;
}
th, td {
border: 1pt solid #999;
padding: 4pt;
text-align: left;
vertical-align: middle;
text-align: justify;
hyphens: auto;
-webkit-hyphens: auto;
-moz-hyphens: auto;
}
/* Tight spacing for first column (dates) */
th:first-child,
td:first-child {
padding: 2pt 3pt;
text-align: center;
width: 8%;
font-size: 10pt;
}
th {
background-color: #f5f5f5;
font-weight: bold;
}
/* Lists */
ul, ol {
margin: 1em 0;
padding-left: 2em;
}
li {
margin: 0.5em 0;
text-align: justify;
hyphens: auto;
-webkit-hyphens: auto;
-moz-hyphens: auto;
}
/* Code blocks */
pre {
background-color: #f5f5f5;
border: 1pt solid #ddd;
padding: 10pt;
overflow-x: auto;
page-break-inside: avoid;
font-family: 'Noto Sans Mono', monospace;
font-size: 10pt;
}
code {
font-family: 'Noto Sans Mono', monospace;
font-size: 0.9em;
background-color: #f5f5f5;
padding: 2pt 4pt;
}
/* Blockquotes */
blockquote {
margin-left: 2em;
margin-right: 0;
padding-left: 1em;
border-left: 3pt solid #999;
color: #666;
page-break-inside: avoid;
text-align: justify;
hyphens: auto;
-webkit-hyphens: auto;
-moz-hyphens: auto;
}
/* Footnotes */
.footnotes {
margin-top: 2em;
padding-top: 1em;
border-top: 1pt solid #000;
font-size: 10pt;
line-height: 1.5;
}
.footnotes ol {
padding-left: 1.5em;
}
.footnotes li {
margin: 0.5em 0;
}
/* Images */
img {
display: block;
max-width: 100%;
}
/* Page breaks */
.page-break {
page-break-after: always;
}
/* Print media queries - German university standards */
@page {
margin-top: 2.5cm;
margin-bottom: 2.5cm;
margin-left: 2.5cm;
margin-right: 4.5cm;
@footnote {
border-top: 1pt solid #000;
padding-top: 0.5em;
margin-top: 1em;
}
}
@media print {
body {
margin: 0;
padding: 0;
}
/* Avoid page breaks inside elements */
h1, h2, h3, h4, h5, h6,
table, pre, blockquote {
page-break-inside: avoid;
}
/* Prevent widows and orphans */
p {
orphans: 3;
widows: 3;
}
}