]> Witch of Git - web/blog/blob - _includes/layouts/layout.njk
Template improvements
[web/blog] / _includes / layouts / layout.njk
1 <!doctype html>
2 <html lang="en">
3 <head>
4 <meta charset="utf8">
5 <meta property="og:type" content="website">
6 {% if title %}
7 <title>Witch of Light - {{ title }}</title>
8 <meta property="og:title" content="Witch of Light - {{ title }}">
9 <meta property="twitter:title" content="Witch of Light - {{ title }}">
10 {% else %}
11 <title>Witch of Light</title>
12 <meta property="og:title" content="Witch of Light">
13 <meta property="twitter:title" content="Witch of Light">
14 {% endif %}
15 {% if summary %}
16 <meta name="description" content="{{ summary }}">
17 <meta property="og:description" content="{{ summary }}">
18 <meta property="twitter:description" content="{{ summary }}">
19 {% else %}
20 <meta name="description" content="A collection of Cassie's harebrained schemes">
21 <meta property="og:description" content="A collection of Cassie's harebrained schemes">
22 <meta property="twitter:description" content="A collection of Cassie's harebrained schemes">
23 {% endif %}
24 <meta property="og:url" content="https://blog.witchoflight.com">
25 <meta property="og:site_name" content="Witch of Light">
26 <meta property="og:image" content="https://www.witchoflight.com/assets/light.jpg">
27 <meta property="og:image:type" content="image/png">
28 <meta property="og:image:width" content="900">
29 <meta property="og:image:height" content="900">
30 <meta property="og:image:alt" content="The Homestuck light aspect icon">
31 <meta name="twitter:card" content="summary">
32 <meta name="twitter:site" content="@porglezomp">
33 <meta name="twitter:creator" content="@porglezomp">
34 <meta name="twitter:image" content="https://www.witchoflight.com/assets/light.png">
35 <meta name="viewport" content="width=device-width, initial-scale=1.0">
36 <style>
37 * { box-sizing: border-box; }
38 html { font-size: 1.4em; line-height: 1.5; color: #444; }
39 body { padding: 1em; max-width: 700px; margin: 0 auto; min-height: 100vh; }
40 body header { margin-bottom: 1em; }
41 body footer { margin-top: 1em; }
42 h1 { margin: 0; }
43 h1, h2, h3, h4, h5, h6 { margin-bottom: 0; }
44 /* @TODO: Make this width managing simpler? */
45 img { max-width: 800px; border-radius: 4px; }
46 @media (max-width: 825px) { img { max-width: calc(100vw - 1em); } }
47 blockquote { border-left: solid 10px #bbb; padding-left: 1em; margin-left: 1em; font-style: italic; }
48 figure { margin: 0; }
49 figcaption > :first-child, aside > :first-child { margin-top: 0; }
50 figcaption > :last-child, aside > :first-child { margin-bottom: 0; }
51 figcaption { font-style: italic; }
52 aside { border: 1px solid black; padding: 0.75em; margin: -0.5em; border-radius: 4px; }
53 aside.warning { background: #ffecbf; }
54 .c-sun { color: #f78123; }
55 .dec-none { text-decoration: none; }
56 .dim { color: #777; }
57 .row { display: flex; flex-direction: row; }
58 .col { display: flex; flex-direction: column; }
59 .hgroup { display: flex; flex-direction: row; }
60 @media (max-width: 500px) { .hgroup { flex-direction: column; } }
61 .row.hcenter { justify-content: center; }
62 .col.hcenter { align-items: center; }
63 .baseline { align-items: baseline; }
64 .spacer { flex-grow: 1; }
65 .ls-none { list-style: none; padding: 0; margin: 0; }
66 </style>
67 <link rel="stylesheet" type="text/css" href="/static/prism.css">
68 </head>
69 <body class="col">
70 <header>
71 <div class="hgroup baseline">
72 <h1><a class="c-sun dec-none" href="/">Witch of Light</a></h1>
73 <div class="spacer"></div>
74 <div class="row" style="margin-top: -0.6em">
75 <a class="c-sun" href="/archive">Archive</a>
76 &nbsp;&nbsp;
77 <a class="c-sun" href="/feed.xml">RSS</a>
78 </div>
79 </div>
80 <i class="dim">A collection of Cassie's harebrained schemes.</i>
81 </header>
82 {{ content | safe }}
83 <div class="spacer"></div>
84 <footer class="row hcenter">
85 Copyright &copy; 2019 Cassie Jones.
86 - <a href="https://twitter.com/porglezomp">@porglezomp</a>
87 </footer>
88 </body>
89 </html>