1
Fork 0

Replace cusotm image loader with object-fit CSS

Because of this, images had to be changed to load async, else pages are crazy intensive to load
This commit is contained in:
Jake Howard 2021-07-18 12:36:59 +01:00
parent 6a6d81d162
commit cd83cbf332
Signed by: jake
GPG key ID: 57AFB45680EDD477
7 changed files with 12 additions and 30 deletions

View file

@ -8,7 +8,7 @@
<figure class="text-center"> <figure class="text-center">
<a href="{{ $destination | safeURL }}" target="_blank"> <a href="{{ $destination | safeURL }}" target="_blank">
<img src="{{ $destination | safeURL }}" alt="{{ .Text | plainify }}" style='max-width: {{ default "90" .Title }}%;' referrerpolicy="no-referrer"/> <img src="{{ $destination | safeURL }}" alt="{{ .Text | plainify }}" style='max-width: {{ default "90" .Title }}%;' referrerpolicy="no-referrer" loading="lazy" decoding="async" />
</a> </a>
<figcaption class="text-center"> <figcaption class="text-center">
<small>{{ .Text | markdownify }}</small> <small>{{ .Text | markdownify }}</small>

View file

@ -32,7 +32,7 @@
<tr> <tr>
{{ with index .album.images 0 }} {{ with index .album.images 0 }}
<td> <td>
<a href="{{ $spotify_url }}"><div class="image" data-image="{{ .url }}"></div></a> <a href="{{ $spotify_url }}"><img src="{{ .url }}" decoding="async" loading="lazy" referrerpolicy="no-referrer"/></a>
</td> </td>
{{ end }} {{ end }}
<td class="text-center"> <td class="text-center">

View file

@ -1,7 +1,7 @@
{{ define "main" }} {{ define "main" }}
{{ $header_image := (resources.Get "img/header.jpg" | fingerprint).Resize "1500x" }} {{ $header_image := (resources.Get "img/header.jpg" | fingerprint).Resize "1500x" }}
<header id="index-header" class="d-flex align-items-center image" data-image="{{ $header_image.RelPermalink }}"> <header id="index-header" class="d-flex align-items-center" style="background-image: url({{ $header_image.RelPermalink }})">
<div class="text-center m-auto text-light"> <div class="text-center m-auto text-light">
<h1 class="display-1">{{ .Site.Params.author_name }}</h1> <h1 class="display-1">{{ .Site.Params.author_name }}</h1>
<h2 class="lead">{{ .Content }}</h2> <h2 class="lead">{{ .Content }}</h2>

View file

@ -10,7 +10,7 @@
{{ .Scratch.Set "image" $unsplash_data.urls.full }} {{ .Scratch.Set "image" $unsplash_data.urls.full }}
{{ end }} {{ end }}
<div class="mb-3 image header-image" data-image='{{ .Scratch.Get "image" }}'></div> <img class="mb-3 header-image" src='{{ .Scratch.Get "image" }}' />
{{ end }} {{ end }}
{{ partial "breadcrumbs/index.html" . }} {{ partial "breadcrumbs/index.html" . }}

View file

@ -12,7 +12,7 @@
{{ $unsplash_data := (getJSON "https://api.unsplash.com/photos/" $unsplash_id "?" $query )}} {{ $unsplash_data := (getJSON "https://api.unsplash.com/photos/" $unsplash_id "?" $query )}}
{{ .Scratch.Set "image" $unsplash_data.urls.thumb }} {{ .Scratch.Set "image" $unsplash_data.urls.thumb }}
{{ end }} {{ end }}
<div class="image" data-image='{{ .Scratch.Get "image" }}'></div> <img src='{{ .Scratch.Get "image" }}' decoding="async" loading="lazy" referrerpolicy="no-referrer" />
</a> </a>
</div> </div>
{{ end }} {{ end }}

View file

@ -36,16 +36,6 @@ $(document).ready(function() {
} }
}); });
$('.image').each(function() {
// setup div-image hybrids
const ele = $(this);
if (ele.data('image')) {
ele.css('background-image', 'url(' + ele.data('image') + ')');
} else {
ele.removeClass('image');
}
});
new Elevator({ new Elevator({
element: document.getElementById('scroll-elevator'), element: document.getElementById('scroll-elevator'),
mainAudio: '/audio/elevator.mp3', mainAudio: '/audio/elevator.mp3',

View file

@ -40,19 +40,8 @@ code {
padding: 0.25em; padding: 0.25em;
} }
.image { img {
background-repeat: no-repeat; object-fit: cover;
background-position: center;
background-size: cover;
&.featured {
margin-bottom: 2em !important;
height: 13em;
&.main {
height: 40vh;
}
}
} }
#light-gallery { #light-gallery {
@ -108,6 +97,9 @@ table td {
} }
#index-header { #index-header {
background-repeat: no-repeat;
background-position: center;
background-size: cover;
width: 100%; width: 100%;
height: calc(100vh - #{$footer-height} - #{$navbar-height}); height: calc(100vh - #{$footer-height} - #{$navbar-height});
@ -150,7 +142,7 @@ footer {
width: 20%; width: 20%;
} }
.image { img {
width: 100%; width: 100%;
height: 10vh; height: 10vh;
} }
@ -263,7 +255,7 @@ h1, h2, h3, h4, h5, h6 {
} }
.playlist { .playlist {
.image { img {
width: 50px; width: 50px;
height: 50px; height: 50px;
} }