aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPortableProgrammer <[email protected]>2025-01-08 17:44:39 +0000
committerPortableProgrammer <[email protected]>2025-01-08 17:44:39 +0000
commite351d76a0e3dfc99a2ea3747ecb3aa06c7c6a613 (patch)
tree9c6867e2f7a3d630d89561f26a121fd641af662e
parentdcd33d89e28c97cc620397d912316a116ac091ba (diff)
Feat: Card View - Update `media` page, allow zooming
-rw-r--r--src/public/styles.css33
-rw-r--r--src/views/media.pug11
2 files changed, 32 insertions, 12 deletions
diff --git a/src/public/styles.css b/src/public/styles.css
index 7a6345a..abc2f13 100644
--- a/src/public/styles.css
+++ b/src/public/styles.css
@@ -51,6 +51,21 @@ body:has(details.card[open]) {
51 overflow: hidden; 51 overflow: hidden;
52} 52}
53 53
54body.media-maximized {
55 /* Fix for Safari User Agent stylesheet */
56 margin: 0;
57}
58
59body.media-maximized.zoom,
60div.media-maximized.container.zoom {
61 overflow: auto;
62}
63
64img.media-maximized.zoom {
65 max-width: unset;
66 max-height: unset;
67}
68
54main { 69main {
55 display: flex; 70 display: flex;
56 flex-direction: column; 71 flex-direction: column;
@@ -326,15 +341,6 @@ summary::before {
326 padding: 1rem; 341 padding: 1rem;
327} 342}
328 343
329.media-maximized-container {
330 display: flex;
331 justify-content: center;
332 align-items: center;
333 width: 100vw;
334 height: 100vh;
335 overflow: hidden;
336}
337
338.media-maximized { 344.media-maximized {
339 max-width: 100vw; 345 max-width: 100vw;
340 max-height: 100vh; 346 max-height: 100vh;
@@ -345,6 +351,15 @@ summary::before {
345 object-fit: contain; 351 object-fit: contain;
346} 352}
347 353
354.media-maximized.container {
355 display: flex;
356 justify-content: center;
357 align-items: center;
358 width: 100vw;
359 height: 100vh;
360 overflow: hidden;
361}
362
348.post-author { 363.post-author {
349 display: none 364 display: none
350} 365}
diff --git a/src/views/media.pug b/src/views/media.pug
index 4476dbb..e945704 100644
--- a/src/views/media.pug
+++ b/src/views/media.pug
@@ -2,9 +2,14 @@ include ../mixins/head
2doctype html 2doctype html
3html 3html
4 +head("home") 4 +head("home")
5 body 5 script(type='text/javascript').
6 div.media-maximized-container 6 function toggleZoom() {
7 Array.from(document.getElementsByClassName('media-maximized')).forEach(element => element.classList.toggle('zoom'));
8 }
9
10 body.media-maximized
11 div.media-maximized.container
7 if kind == 'img' 12 if kind == 'img'
8 img(src=url).media-maximized 13 img(src=url onclick=`toggleZoom()`).media-maximized
9 else 14 else
10 video(src=url controls).media-maximized 15 video(src=url controls).media-maximized