diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/base.html | 47 | ||||
-rw-r--r-- | includes/main.css | 112 | ||||
-rw-r--r-- | includes/page.html | 9 | ||||
-rw-r--r-- | includes/post.html | 19 |
4 files changed, 187 insertions, 0 deletions
diff --git a/includes/base.html b/includes/base.html new file mode 100644 index 0000000..61df94a --- /dev/null +++ b/includes/base.html @@ -0,0 +1,47 @@ +---json +{ +"date": "git Created" +} +--- +<!doctype html> +<html :lang="metadata.language"> + +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta name="color-scheme" content="light dark"> + <meta name="generator" :content="eleventy.generator"> + <title property="og:title" @text="title || metadata.title"></title> + <meta property="og:locale" :content="metadata.language"> + <meta name="theme-color" :content="metadata.theme"> + <meta name="description" :property="og:description" :content="description || metadata.description"> + <meta property="og:url" :content="htmlBaseUrl(page.url, metadata.url)"> + <link rel="canonical" href="htmlBaseUrl(page.url, metadata.url)"> + <meta property="og:site_name" :content="metadata.title"> + <meta name="author" :content="metadata.author.name"> + <meta property="og:type" content="website"> + <meta name="twitter:card" content="summary"> + <link rel="alternate" href="/atom.xml" type="application/atom+xml" :title="metadata.title"> + <link rel="icon" href="/favicon.svg" type="image/svg+xml"> + <link rel="stylesheet" href="../node_modules/modern-normalize/modern-normalize.css" /> + <link rel="stylesheet" href="../node_modules/prismjs/themes/prism-okaidia.css" /> + <link rel="stylesheet" href="main.css" /> + <link rel="stylesheet" :href="getBundleFileUrl('css')" webc:keep /> +</head> + +<body> + <header> + <nav> + <a href="#" style="font-weight: 900;">Sudomsg</a> + <template webc:for="entry of eleventyNavigation(collections.all)" webc:nokeep> + <a :href="entry.url" @text="entry.title"></a> + </template> + </nav> + </header> + <main @html="content"></main> + <footer> + Subscribe - <a href="/atom.xml">Atom</a> + </footer> +</body> + +</html> diff --git a/includes/main.css b/includes/main.css new file mode 100644 index 0000000..0f94c46 --- /dev/null +++ b/includes/main.css @@ -0,0 +1,112 @@ +html { + accent-color: darkred; + text-align: justify; +} + +* :any-link { + color: inherit; + text-decoration: underline; +} + +aside { + max-width: max(40%, 12rem); + background: darkred; + color: white; + float: right; + margin: 1rem; + padding: 0.5rem; +} + +img, +svg, +video, +canvas, +audio, +iframe, +embed, +object { + max-width: 100%; + width: fit-content; + padding: 1rem; + margin: auto; +} + +img, +svg, +video, +canvas { + height: auto; +} + +picture { + display: contents; +} + +@media screen { + + * :any-link:hover, + * :any-link:active { + font-style: italic; + } + + body { + max-width: min(100dvw, 58rem); + min-height: 100dvh; + padding: 0.5rem; + margin-left: auto; + margin-right: auto; + grid-template-columns: 1fr; + grid-template-rows: auto 1fr auto; + grid-template-areas: + 'header' + 'main' + 'footer'; + display: grid; + } + + :is(header, footer) { + padding: 1rem; + font-weight: bolder; + background-color: darkred; + } + + :is(header, footer) *:any-link { + text-decoration: none; + } + + header { + grid-area: header; + } + + main { + grid-area: main; + } + + footer { + align-self: end; + grid-area: footer; + } + + nav>a { + margin-right: 0.5rem; + } +} + +@media print { + + header, + footer { + display: none; + } + + section, + table { + orphans: 4; + break-inside: auto; + } + + tr { + break-inside: avoid; + break-before: auto; + } +} diff --git a/includes/page.html b/includes/page.html new file mode 100644 index 0000000..2439e37 --- /dev/null +++ b/includes/page.html @@ -0,0 +1,9 @@ +---json +{ +"layout": "base" +} +--- +<article> + <h1 @text="title"></h1> + <template @html="content" webc:nokeep /> +</article> diff --git a/includes/post.html b/includes/post.html new file mode 100644 index 0000000..baecde7 --- /dev/null +++ b/includes/post.html @@ -0,0 +1,19 @@ +---json +{ +"layout": "base" +} +--- +<article itemscope :itemtype="schema('BlogPosting')"> + <h1 @text="title"></h1> + <small> + <time :datetime="htmlDateString(page.date)" itemprop="datePublished" + @text="readableDate(page.date)"></time> + - <span itemprop="author" itemscope :itemtype="schema('Person')"> + <a :href="metadata.author.url" rel="author" itemprop="url"> + <span itemprop="name" @text="metadata.author.name"></span> + </a> + </span> + </small> + <p><small itemprop="abstract" @content="(description"></small></p> + <div itemprop="articleBody" @html="content" /> +</article> |