major CSS refactoring: kill bootstrap + theme-default deps

This commit is contained in:
Wouter Groeneveld 2022-10-30 21:34:55 +01:00
parent 190096ac83
commit a75d37e8b3
21 changed files with 6051 additions and 240 deletions

View File

@ -1,5 +1,5 @@
baseurl = "https://jefklakscodex.com/"
title = "Jefklaks Codex"
title = "Jefklak's Codex"
theme = "jefklak-creative-portfolio"
languageCode = "en-us"
publishDir = "docs"

View File

@ -53,7 +53,7 @@ Heavyweight metroidvania's:
- Dandara (16)
- The Mummy Demastered (16)
- Cave Story+
- Axiom Verge (8)
- [Axiom Verge](/games/switch/axiom-verge) (8)
- [Hollow Knight](/games/switch/hollow-knight)
- Xeodrifter
@ -77,7 +77,7 @@ Inspired by: **Contra**, **Metal Slug**, **Mega Man**
Inspired by **Sonic**, **Kirby**, **Mario Bros**
- [Sonic Mania](/games/switch/sonic-mania)
- Rayman Legends
- [Rayman Legends](/games/switch/rayman-legends)
- Kirby Star Allies
- Donkey Kong: Tropical Freeze (could be hard- or softcore)

View File

@ -1,18 +1,14 @@
<div class="row">
<div class="col-md-6">
<div class="dualscreens">
<figure>
<a href="{{ index .Params 0 }}/{{ index .Params 1 }}" class="lbox">
<img src="{{ index .Params 0 }}/{{ index .Params 1 }}" loading="lazy" class="img-responsive" alt="{{ index .Params 2 }}" title="{{ index .Params 2 }}">
</a>
<figcaption>{{ index .Params 2 }}</figcaption>
</figure>
</div>
<div class="col-md-6">
<figure>
<a href="{{ index .Params 0 }}/{{ index .Params 3 }}" class="lbox">
<img src="{{ index .Params 0 }}/{{ index .Params 3 }}" loading="lazy" class="img-responsive" alt="{{ index .Params 4 }}" title="{{ index .Params 4 }}">
</a>
<figcaption>{{ index .Params 4 }}</figcaption>
</figure>
</div>
</div>

View File

@ -0,0 +1,125 @@
*
box-sizing: border-box
&:before, &:after
box-sizing: border-box
html, body
overflow-x: hidden
header
z-index: 1000
.hidden
display: none !important
.visible-xs
display: none !important
@media (max-width: 766px)
display: block !important
.container-fluid
padding-left: 0
height: 100%
.row
margin-right: -15px
margin-left: -15px
&:before, &:after
display: table
content: " "
&:after
clear: both
.content-column
padding-left: 45px
padding-right: 45px
padding-top: 30px
@media (min-width: 1200px)
padding-left: 5rem
width: 73%
&-content
@media (min-width: 1200px)
padding: 0
div.row
padding-bottom: 14px
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6
line-height: 1.2
ol, ul
margin-top: 0
section
position: relative
padding-top: 40px
padding-bottom: 40px
.pull-left
float: left !important
.box-masonry
background-color: var(--bglightshade)
border: 1px solid var(--accent)
border-radius: 5px
margin-bottom: 30px
transition: all 0.2s ease-out
display: flex
flex-wrap: wrap
&-text
padding: 15px 20px 15px
flex-grow: 1
flex-basis: calc(70% - 22px)
h4
margin: 0
.box-masonry-image
flex-grow: 1
flex-basis: calc(20% - 20px)
img
object-fit: cover
min-height: 100%
&-description
clear: both
strong
font-size: 1.1rem
text-style: italic
.sidebar-date
float: right
clear: both
padding-top: 0.5em
padding-bottom: 0.5em
&:hover
box-shadow: 0 0 5px grey
.pagination
display: inline-block
padding-left: 0
border-radius: 4px
li
list-style-type: none
position: relative
float: left
padding: 6px 12px
border: 1px solid var(--bgdark)
background-color: var(--bgdarker)
&.active
font-weight: bold
background-color: var(--bgdark)
&.disabled
background-color: var(--bglight)
cursor: not-allowed

View File

@ -5,9 +5,15 @@ html
font-size: 1.15rem
body, h1, h2, h3, h4, article p, article li, .box-masonry .box-masonry-text p, .copyright, .copyright p.credit a
body, h1, h2, h3, h4, article p, article li, .box-masonry .box-masonry-text p
color: var(--textcolor)
.copyright
color: var(--textcolor)
font-size: 0.8rem
p.credit a
color: var(--textcolor)
.latest-all
float: right
margin-top: -20px
@ -17,12 +23,12 @@ body, h1, h2, h3, h4, article p, article li, .box-masonry .box-masonry-text p, .
max-width: 100%
height: auto
.box-masonry .box-masonry-text p
font-size: 0.9rem
body
background-color: var(--bglight)
line-height: 1.7
margin: 0
box-sizing: border-box
height: 100%
@media (min-width: 960px)
@ -61,6 +67,7 @@ h1, .h1
font-size: 2.5rem
font-weight: 700
margin-bottom: 2rem
margin-top: 0
h2, .h2
font-size: 2rem
@ -88,17 +95,33 @@ blockquote
border-left: 7px solid var(--accent)
background-color: var(--bglightshade)
border-radius: 5px
padding: 12px 24px
margin: 0 0 24px
padding: 0.8rem
margin: 0 0 24px
p
margin: 0
p
margin: 0 0 24px
button
background-color: var(--accent) !important
color: white !important
border-color: darkgrey !important
button
display: inline-block
padding: 6px 12px
font-size: 1rem
touch-action: manipulation
cursor: pointer
font-weight: 400
text-align: center
background-color: var(--accent)
color: white
border: 1px solid transparent
border-color: darkgrey
border-radius: 4px
transition: all 0.2s ease-out
&:hover
box-shadow: 0 0 5px grey
.small-navbar button
@ -108,11 +131,17 @@ button
margin-left: 1rem
hr
hr
border: 0
border-top: 1px solid var(--accent)
margin-top: 24px
margin-bottom: 24px
margin-top: 24px
margin-bottom: 24px
.img-responsive
max-width: 100%
height: auto
margin: 0 auto
display: block
#rsslink
position: absolute
@ -137,29 +166,14 @@ footer
@media only screen and (min-width: 1200px)
visibility: visible
a
&.lbox
border-bottom: none
.content-column
padding-left: 30px
padding-right: 30px
padding-top: 30px
&:hover
background-color: unset
@media (min-width: 1200px)
padding-left: 5rem
&-content
@media (min-width: 1200px)
padding: 0
div.row
padding-bottom: 14px
.col-lg-8
@media (min-width: 1200px)
width: 72%
a.external
&.external
background-image: url(/img/external.png)
background-position: center right
background-repeat: no-repeat
@ -179,8 +193,9 @@ a.external
article
figure
margin-top: 1.5rem
margin-bottom: 1.5rem
margin: 1.5rem
@media (min-width: 992px)
margin: 1.5rem 0 1.5rem 0
figcaption
padding: 10px
@ -192,6 +207,14 @@ article
border: 1px solid black
border-radius: 5px
.dualscreens
display: grid
grid-template-columns: repeat(2, 1fr)
grid-column-gap: 10px
figure
margin: 0
.video-mask
padding-top: 1.2rem
padding-bottom: 1.2rem
@ -209,8 +232,13 @@ article
p, li
text-align: left !important
main li
list-style-type: circle
main
float: left
@media (min-width: 768px)
width: 75%
li
list-style-type: circle
.no-border
border: none !important
@ -219,43 +247,14 @@ main li
display: none
a, .box-masonry h4 a, .link
a, .link
color: var(--textlink)
text-decoration: none
border-bottom: 1px solid darkgrey
a:hover, .box-masonry h4 a:hover, .link:hover
a:hover, .link:hover
color: var(--textlink)
background-color: #d1d3bd
.container-fluid
padding-left: 0
height: 100%
.box-masonry
background-color: var(--bglightshade)
border: 1px solid var(--accent)
border-radius: 5px
&:hover
box-shadow: 0 0 5px black
.box-masonry-hover-text-header, .box-masonry-hover-center
opacity: 1
.box-masonry-image.with-hover-overlay:before
opacity: 0.3
.box-masonry-image.with-hover-icon:after
opacity: 1
.box-masonry-image
background: none
padding-top: 10px
img
height: 30vh
object-fit: cover
.img-inactive
@ -271,18 +270,6 @@ a:hover, .box-masonry h4 a:hover, .link:hover
.pages
color: var(--accent)
.pagination > .disabled > span
background-color: var(--bgdarker)
.pagination > li > a, .pagination > li > span
background-color: var(--bgdark)
border: 1px solid var(--bgdarker)
color: #333
.pagination > .active > a
background-color: var(--bglight)
color: #333
.categories
padding-top: 1.5rem
@ -291,6 +278,9 @@ a:hover, .box-masonry h4 a:hover, .link:hover
kbd
padding: 0.2rem 0.5rem 0.2rem 0.5rem
background-color: var(--bgdark)
border-radius: 5px
box-shadow: inset 0 -1px 0 rgba(0,0,0,.25)
font-size: 90%
color: var(--textlinktag)
#skiptocontent

View File

@ -1,12 +1,17 @@
.sidebar
padding: 0
height: 100%
float: left
min-height: 1px
overflow: auto
vertical-align: top
display: inline-block
padding-left: 10px
background-color: var(--bgdark)
@media (min-width: 768px)
width: 25%
&-scrolling
width: 100%
position: unset
@ -17,12 +22,13 @@
width: 50%
@media (min-width: 768px)
width: calc(33.33% - 5px)
@media (min-width: 960px)
width: calc(25% - 5px)
&-menu
list-style-type: none
padding-left: 20px
margin-bottom: 40px
li
font-size: 0.8rem
padding-top: 8px
@ -41,11 +47,15 @@
&:before, a
color: var(--textlink)
&-content
&-content
background-color: var(--bgdark)
border-right: 5px solid var(--accent)
padding-top: 30px
padding-left: 10px
@media (min-width: 992px)
padding-left: 20px
padding-right: 20px
&-offcanvas
@media screen and (max-width: 767px)
left: -46% !important
@ -84,6 +94,9 @@
&-heading
font-weight: bold
font-size: 1.1rem
letter-spacing: 0.1em
text-transform: uppercase
padding-top: 10px
padding-left: 10px
margin-top: 0
@ -93,3 +106,38 @@
color: var(--textlinkdark)
font-size: 0.7rem
.row-offcanvas
@media screen and (max-width: 767px)
position: relative
transition: all 0.25s ease-out
opacity: 1
&-right
.sidebar-offcanvas
@media screen and (max-width: 767px)
right: -50%
@media screen and (max-width: 767px)
right: 0
&-left
.sidebar-offcanvas
@media screen and (max-width: 767px)
left: -48%
@media screen and (max-width: 767px)
left: 0
&-right.active
@media screen and (max-width: 767px)
right: 50%
&-left.active
@media screen and (max-width: 767px)
left: 50%
.sidebar-offcanvas
@media screen and (max-width: 767px)
position: absolute
top: 0
width: 50%

View File

@ -1,5 +1,6 @@
@import 'variables'
@import 'fonts'
@import 'bootstrap-minimal'
@import 'codex'
@import 'sidebar'
@import 'toot'

View File

@ -1,16 +1,12 @@
{{ define "main" }}
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="row">
<div class="col-lg-8">
<article>
<h1>Page not found</h1>
<article>
<h1>Page not found</h1>
<p>
No Worries! Try to dig through <a href="/games">all games</a> or <a href="/tags">the appendix</a> instead to find something similar to what you were looking for. Good luck!
</p>
</article>
</div>
</div>
<p>
No Worries! Try to dig through <a href="/games">all games</a> or <a href="/tags">the appendix</a> instead to find something similar to what you were looking for. Good luck!
</p>
</article>
</div>
{{ end }}

View File

@ -1,9 +1,8 @@
{{ define "main" }}
<div class="col-xs-12 col-sm-8 col-md-9 content-column" data-pagefind-body>
<div class="content-column" data-pagefind-body>
{{ partial "mobile_nav_toggle.html" . }}
<div class="row">
<div class="col-lg-8">
<article class="h-entry">
<header>
@ -66,7 +65,6 @@
<hr/>
</article>
</div>
</div>
</div>
{{ end }}

View File

@ -11,10 +11,9 @@
{{ partial "sidebar.html" . }}
<main>
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="row">
<div class="col-lg-8">
<a class="h-card" rel="me" href="https://jefklakscodex.com/" style="border: none">
<img class="no-border" alt="logo" src="/img/logo.png" />
@ -52,7 +51,6 @@
{{ end }}
</article>
</div>
</div>
</div>
</div>

View File

@ -1,13 +1,11 @@
{{ define "main" }}
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="row">
<div class="col-lg-8">
<article>
<h1>{{ .Title }}</h1>
{{ .Content }}
</article>
</div>
<article>
<h1>{{ .Title }}</h1>
{{ .Content }}
</article>
</div>
</div>
{{ end }}

View File

@ -1,46 +1,44 @@
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="col-lg-8">
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
<article>
{{ .Content }}
</article>
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
<article>
{{ .Content }}
</article>
<h2>Game Codex &raquo;</h2>
<h2>Game Codex &raquo;</h2>
{{ $pages := .RegularPagesRecursive }}
{{ if $pages }}
<div class="gamegridcontrols">
Sort by:
<button class="sortbtn sorted sorted-descending" data-sort="date" data-sorted="descending">Date added</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="name">Title</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="year">Release year</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="hours">How long to beat</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="rating">Rating</button>
</div>
<noscript>
Sorting relies on JavaScript which is currently disabled.
</noscript>
<div class="gamegrid">
{{ range $pages }}
{{ if isset .Params "game_name" }}
{{ partial "gamegrid-block.html" . }}
{{ end }}
{{ end }}
{{ $pages := .RegularPagesRecursive }}
{{ if $pages }}
<div class="gamegridcontrols">
Sort:
<button class="sortbtn sorted sorted-descending" data-sort="date" data-sorted="descending">Date added</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="name">Title</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="year">Release year</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="hours">How long to beat</button>&nbsp;&nbsp;
<button class="sortbtn" data-sort="rating">Rating</button>
</div>
{{ else }}
<p>
No entries yet. Check back soon!
</p>
{{ end }}
<noscript>
Sorting relies on JavaScript which is currently disabled.
</noscript>
<div class="gamegrid">
{{ range $pages }}
{{ if isset .Params "game_name" }}
{{ partial "gamegrid-block.html" . }}
{{ end }}
{{ end }}
</div>
{{ else }}
<p>
Browse the Codex: <a href="/games">all games</a> | <a href="/platforms">by platform</a> | <a href="/tags">the appendix</a>.
No entries yet. Check back soon!
</p>
{{ end }}
<hr/>
</div>
<p>
Browse the Codex: <a href="/games">all games</a> | <a href="/platforms">by platform</a> | <a href="/tags">the appendix</a>.
</p>
<hr/>
</div>

View File

@ -119,17 +119,14 @@
}
</script>
<link rel="preload" href="{{ "css/bootstrap.min.css" | absURL }}" as="style" onload="this.onload=null;this.rel='stylesheet'">
<link rel="preload" href="{{ "css/simple-lightbox.min.css" | absURL }}" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript>
<link rel="stylesheet" href="{{ "css/bootstrap.min.css" | absURL }}">
<link rel="stylesheet" href="{{ "css/simple-lightbox.min.css" | absURL }}">
</noscript>
<link href="{{ "css/style.default.css" | absURL }}" rel="stylesheet" id="theme-stylesheet">
{{- $options := (dict "targetPath" "css/styles.css" "outputStyle" "compressed" "enableSourceMap" "true") -}}
{{- $styles := resources.Get "sass/main.sass" | resources.ExecuteAsTemplate "main.sass" . | resources.ToCSS $options | resources.Fingerprint "sha512" }}
<link rel = 'stylesheet' href = '{{ $styles.Permalink }}' integrity = '{{ $styles.Data.Integrity }}'>
<link rel="stylesheet" href="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}">
<noscript>
<style>

View File

@ -1,4 +1,3 @@
<div class="small-navbar visible-xs">
<button type="button" data-toggle="offcanvas" class="btn btn-ghost pull-left"> &raquo;&nbsp;Menu</button>
<h1 class="small-navbar-heading"><a href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a></h1>
</div>

View File

@ -1,6 +1,6 @@
<div class="row box-masonry" style="margin-right: 10px">
<div class="col-md-4">
<a href="{{ .Permalink }}" title="" class="box-masonry-image with-hover-overlay with-hover-icon">
<article class="box-masonry">
<a href="{{ .Permalink }}" title="{{ .Params.title }}" class="box-masonry-image">
{{ $thumb := "/img/logo.png" | absURL }}
{{ if .Params.image }}
{{ $thumb = .Params.image | absURL }}
@ -20,14 +20,13 @@
{{ end }}
{{ end }}
{{ end }}
<img loading="lazy" src="{{ $thumb }}" alt="thumbnail of {{ .Title }}" class="img-responsive img-inactive">
<img loading="lazy" src="{{ $thumb }}" alt="thumbnail of {{ .Title }}" style="display: block; max-width: 100%">
</a>
</div>
<div class="col-md-8">
<div class="box-masonry-text">
<h4 style="margin: 0; float: left;"><a href="{{ .Permalink }}">{{ .Title }}</a></h4>
<h4><a href="{{ .Permalink }}">{{ .Title }}</a></h4>
{{ if .Date }}
{{ .Date.Format (.Site.Params.dateFormat | default "01/2006") | $.Scratch.Set "subtitle" }}
{{ .Date.Format (.Site.Params.dateFormat | default "02/01/2006") | $.Scratch.Set "subtitle" }}
<span class="sidebar-date" style="float: right;">
<svg class='icon icon-inline'>
<use xlink:href='#cal1'></use>
@ -35,22 +34,12 @@
{{ $.Scratch.Get "subtitle" }}
</span>
{{ end }}
<div class="box-masonry-description" style="clear: both;">
<div class="box-masonry-description">
<p>
{{ if .Description }}
{{ .Description }}
{{ else if .Summary }}
{{ .Summary }}
{{ else }}
<p>
A {{ .Params.game_genre }} game by {{ .Params.game_developer }} in {{ .Params.game_release_year }} that takes about {{ .Params.howlongtobeat_hrs }} hour(s) to beat.
</p>
<p>
{{ partial "score" . }}
</p>
{{ end }}
<strong>{{ partial "scorelabel" . }} |</strong>
{{ .Summary | truncate 150 }}
</p>
</div>
</div> <!-- box-masonry-text -->
</div>
</div><!-- row -->
</article>

View File

@ -1,30 +1,30 @@
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="col-lg-8">
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
{{ if eq .Paginator.PageNumber 1 }}
<article>
{{ .Content }}
</article>
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
{{ if eq .Paginator.PageNumber 1 }}
<article>
{{ .Content }}
</article>
{{ end }}
<h3>Featured: <em>{{ .Title }}</em>
<span class='pages'>(Page {{ .Paginator.PageNumber }}/{{ .Paginator.TotalPages }})</span> &raquo;
</h3>
<section>
{{ range (.Paginate .Pages).Pages }}
{{ if and (gt (len .Content) 1) (ne .Params.ignore true) }}
{{ partial "portfolio-block.html" . }}
{{ end }}
{{ end }}
</section>
<h3>Featured: <em>{{ .Title }}</em>
<span class='pages'>(Page {{ .Paginator.PageNumber }}/{{ .Paginator.TotalPages }})</span> &raquo;
</h3>
<div style="text-align: center;">
{{- template "_internal/pagination.html" . }}
</div>
{{ range (.Paginate .Pages).Pages }}
{{ if and (gt (len .Content) 1) (ne .Params.ignore true) }}
{{ partial "portfolio-block.html" . }}
{{ end }}
{{ end }}
<div style="text-align: center;">
{{- template "_internal/pagination.html" . }}
</div>
<hr/>
</div>
<hr/>
</div>

View File

@ -15,19 +15,7 @@
{{ end }}
{{ if not $simplescore }}
{{ if eq $score 5 }}
It was amazing!
{{ else if eq $score 4 }}
I really liked it!
{{ else if eq $score 3 }}
I liked it.
{{ else if eq $score 2 }}
It was OK.
{{ else if eq $score 1 }}
I did not like it.
{{ else }}
Horrible.
{{ end}}
{{ partial "scorelabel" . }}
{{ end }}
</p>
{{ end }}

View File

@ -0,0 +1,13 @@
{{ if eq $.Params.score 5 }}
It was amazing!
{{ else if eq $.Params.score 4 }}
I really liked it!
{{ else if eq $.Params.score 3 }}
I liked it.
{{ else if eq $.Params.score 2 }}
It was OK.
{{ else if eq $.Params.score 1 }}
I did not like it.
{{ else }}
Horrible.
{{ end}}

View File

@ -1,6 +1,6 @@
<nav class="sidebar col-xs-6 col-sm-4 col-md-3 sidebar-offcanvas">
<nav class="sidebar sidebar-offcanvas">
<div class="sidebar-content sidebar-scrolling">
<h1 class="sidebar-heading"><a href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a></h1>
<h1 class="sidebar-heading"><a href="{{ .Site.BaseURL }}" title="{{ .Site.Title }} Home">{{ .Site.Title }}</a></h1>
{{ $thumb := "" }}
{{ if .Params.image }}

View File

@ -1,19 +1,17 @@
{{ define "main" }}
<div class="col-xs-12 col-sm-8 col-md-9 content-column">
<div class="content-column">
{{ partial "mobile_nav_toggle.html" . }}
<div class="col-lg-8">
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
<article>
{{ .Content }}
</article>
<a class="h-card" rel="me" href="{{ .Site.BaseURL }}" style="border: none">
<img src="/img/logo.png" class="logo" alt="jefklaks codex logo" />
</a>
<article>
{{ .Content }}
</article>
{{ range where .Site.Pages "Params.type" "eq" "platform" }}
{{ partial "portfolio-block.html" . }}
{{ end }}
<hr/>
</div>
{{ range where .Site.Pages "Params.type" "eq" "platform" }}
{{ partial "portfolio-block.html" . }}
{{ end }}
<hr/>
</div>
{{ end }}

File diff suppressed because one or more lines are too long