diff --git a/assets/sass/common.scss b/assets/sass/common.scss index cc57c71..c2d997f 100644 --- a/assets/sass/common.scss +++ b/assets/sass/common.scss @@ -21,3 +21,19 @@ h6 { margin: 0; font-weight: 500; } + +figure { + margin: 0; +} + +body { + margin: 0.5rem; + min-height: calc(100vh - 1rem); + + display: flex; + flex-direction: column; + + main { + flex: 1; + } +} diff --git a/assets/sass/content.scss b/assets/sass/content.scss new file mode 100644 index 0000000..b99b7d0 --- /dev/null +++ b/assets/sass/content.scss @@ -0,0 +1,11 @@ +.content { + max-width: $width-content; + margin: 0 auto; + padding: 2rem; +} + +@media (max-width: $width-mobile) { + .content { + padding: 1rem; + } +} diff --git a/assets/sass/hero.scss b/assets/sass/hero.scss new file mode 100644 index 0000000..0ff91ea --- /dev/null +++ b/assets/sass/hero.scss @@ -0,0 +1,27 @@ +.hero { + max-width: $width-content; + margin: 0 auto; + padding: 2rem 2rem 0 2rem; + + .meta { + font-size: 0.8rem; + + .date { + color: var(--text-600); + } + + .duration { + color: color-mix(in srgb, var(--text) 50%, var(--background)); + } + } +} + +.hero + .content { + padding-top: 0; +} + +@media (max-width: $width-mobile) { + .hero { + padding: 1rem 1em 0 1rem; + } +} diff --git a/assets/sass/image.scss b/assets/sass/image.scss new file mode 100644 index 0000000..f04b801 --- /dev/null +++ b/assets/sass/image.scss @@ -0,0 +1,15 @@ +.image { + width: 100%; + padding: 1rem 0; + + img { + width: 100%; + display: block; + } + + figcaption { + text-align: center; + padding-top: 0.5rem; + color: color-mix(in srgb, var(--text) 50%, var(--background)); + } +} diff --git a/assets/sass/main.scss b/assets/sass/main.scss index 43f2ed2..29d16de 100644 --- a/assets/sass/main.scss +++ b/assets/sass/main.scss @@ -4,9 +4,12 @@ $width-max: 60rem; @import "colors"; @import "fonts"; -@import "size"; @import "common"; +@import "image"; + @import "header"; @import "posts"; +@import "content"; +@import "hero"; @import "footer"; diff --git a/assets/sass/posts.scss b/assets/sass/posts.scss index a66f208..4647524 100644 --- a/assets/sass/posts.scss +++ b/assets/sass/posts.scss @@ -12,10 +12,6 @@ font-size: 2.25rem; } - .summary { - font-size: 1.1rem; - } - .meta { font-size: 0.8rem; @@ -34,3 +30,13 @@ color: var(--text-900); } } + +@media (max-width: $width-mobile) { + .posts-list { + .post { + &:not(:first-child) { + margin-top: 2rem; + } + } + } +} diff --git a/assets/sass/size.scss b/assets/sass/size.scss deleted file mode 100644 index 8da0787..0000000 --- a/assets/sass/size.scss +++ /dev/null @@ -1,16 +0,0 @@ -body { - margin: 0.5rem; - min-height: calc(100vh - 1rem); - display: flex; - flex-direction: column; - - main { - flex: 1; - - .content { - max-width: $width-content; - margin: 0 auto; - padding: 2.5rem; - } - } -} diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..d681212 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,8 @@ +{{ define "main" }} +
+ {{ partial (printf "posts/%s.html" (.Params.heroType | default "hero")) . }} +
+ {{ .Content }} +
+
+{{ end }} diff --git a/layouts/partials/image.html b/layouts/partials/image.html new file mode 100644 index 0000000..d7f08dc --- /dev/null +++ b/layouts/partials/image.html @@ -0,0 +1,12 @@ +{{- $path := .path -}} +{{- $alt := .alt -}} +{{- $caption := .caption -}} + +{{ if $path }} +
+ + {{ with $caption }} +
{{ . }}
+ {{ end }} +
+{{ end }} diff --git a/layouts/partials/posts/hero.html b/layouts/partials/posts/hero.html new file mode 100644 index 0000000..12d18ef --- /dev/null +++ b/layouts/partials/posts/hero.html @@ -0,0 +1,16 @@ +
+

{{ .Title }}

+
+ {{ .Date | time.Format ":date_medium" }} + · + {{ printf "%d MIN READ" .ReadingTime }} +
+ {{ with .Params.heroImage }} + {{ partial "image.html" (dict + "path" .path + "alt" .alt + "caption" .caption + ) + }} + {{ end }} +