Aspect-preserved detail image with full-size download
Photo detail page previously showed a square crop of the source image. Now generate an aspect-preserved medium JPEG (longest side 1600, quality 88) and display that on the detail page instead. The original file is linked from a click-through on the image and from a sidebar 'Full size' download link. Also skip regeneration of images/thumbs/medium when the destination is already at least as new as the source, so a rebuild triggered by editing one sidecar (or restarting the service) no longer redecodes and rescales every photo.
This commit is contained in:
+33
-4
@@ -183,21 +183,32 @@ body {
|
||||
|
||||
.dlayout {
|
||||
display: flex;
|
||||
align-items: stretch;
|
||||
border: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.dimg-wrap {
|
||||
flex: 1;
|
||||
aspect-ratio: 1;
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
background: var(--bg1);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.dimg-wrap a {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
max-height: 85vh;
|
||||
}
|
||||
|
||||
.dimg-wrap img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
max-height: 85vh;
|
||||
width: auto;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.dsidebar {
|
||||
@@ -257,6 +268,24 @@ body {
|
||||
letter-spacing: 0.06em;
|
||||
}
|
||||
|
||||
.dfull {
|
||||
margin-top: 14px;
|
||||
padding-top: 14px;
|
||||
border-top: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.dfull a {
|
||||
font-size: 13px;
|
||||
font-family: monospace;
|
||||
color: var(--aqua);
|
||||
text-decoration: none;
|
||||
letter-spacing: 0.04em;
|
||||
}
|
||||
|
||||
.dfull a:hover {
|
||||
color: var(--fg2);
|
||||
}
|
||||
|
||||
/* ── Responsive ────────────────────────────────────────────── */
|
||||
|
||||
@media (max-width: 600px) {
|
||||
|
||||
Reference in New Issue
Block a user