recipe/packages/shared/styles/normalize.scss
2024-08-18 19:16:25 +08:00

280 lines
3.7 KiB
SCSS

html,
body {
margin: 0;
padding: 0;
background: #fff;
}
html {
font-size: 16px;
font-display: optional;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: transparent;
@media print {
font-size: 12pt;
}
}
body {
min-height: 100vh;
color: #2c3e50;
}
a {
color: #3eaf7c;
font-weight: 500;
text-decoration: none;
overflow-wrap: break-word;
}
kbd {
display: inline-block;
min-width: 1em;
margin-inline: 0.125rem;
padding: 0.25em;
border: 1px solid #eee;
border-radius: 0.25em;
box-shadow: 1px 1px 4px 0 rgb(0 0 0 / 15%);
line-height: 1;
letter-spacing: -0.1em;
text-align: center;
}
code {
margin: 0;
padding: 0.2rem 0.4rem;
border-radius: 5px;
background: rgb(127 127 127 / 12%);
font-size: 0.85em;
overflow-wrap: break-word;
table & {
padding: 0.1rem 0.4rem;
}
p a & {
color: #3eaf7c;
font-weight: 400;
}
}
strong {
font-weight: 600;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: 500;
line-height: 1.25;
overflow-wrap: break-word;
&:focus-visible {
outline: none;
}
}
h1 {
font-size: 2rem;
}
h2 {
padding-bottom: 0.3rem;
border-bottom: 1px solid #eaecef;
font-size: 1.65rem;
}
h3 {
font-size: 1.35rem;
}
h4 {
font-size: 1.15rem;
}
h5 {
font-size: 1.05rem;
}
h6 {
font-size: 1rem;
}
a.header-anchor {
position: relative;
color: inherit;
&:hover {
&::before {
content: "";
position: absolute;
bottom: 0;
left: -0.75em;
color: var(--c-brand);
font-size: 0.75em;
}
}
&:focus-visible {
outline: none;
&::before {
content: "";
position: absolute;
left: -0.75em;
color: var(--c-brand);
outline: auto;
}
}
}
p,
ul,
ol {
line-height: 1.6;
overflow-wrap: break-word;
@media print {
line-height: 1.5;
}
}
ul,
ol {
padding-inline-start: 1.2em;
}
blockquote {
margin: 1rem 0;
padding: 0.25rem 0 0.25rem 1rem;
border-inline-start: 0.2rem solid #ddd;
color: #666;
font-size: 1rem;
overflow-wrap: break-word;
> p {
margin: 0;
}
}
hr {
border: 0;
border-top: 1px solid #eaecef;
}
table {
display: block;
overflow-x: auto;
margin: 1rem 0;
border-collapse: collapse;
}
tr:nth-child(odd) {
background: #f6f8fa;
}
th,
td {
padding: 0.6em 1em;
border: 1px solid #dfe2e5;
}
pre {
direction: ltr;
}
@page {
margin: 2cm;
font-size: 12pt;
size: a4;
}
@media print {
// clear style
*,
::after,
::before {
box-shadow: none !important;
text-shadow: none !important;
}
// handle main content style
h2,
h3,
p {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
a {
color: inherit;
font-weight: inherit !important;
font-size: inherit !important;
text-decoration: underline;
// add links after anchor
&[href^="http://"],
&[href^="https://"]
{
&::after {
content: " (" attr(href) ") ";
}
}
}
// add abbreviations
abbr[title]::after {
content: " (" attr(title) ")";
}
pre {
border: 1px solid #eee;
white-space: pre-wrap !important;
> code {
white-space: pre-wrap !important;
}
}
blockquote {
border-inline-start: 0.2rem solid #ddd;
color: inherit;
}
blockquote,
pre {
orphans: 5;
widows: 5;
}
img,
tr,
canvas {
page-break-inside: avoid;
}
}