L'illuminazione delle immagini con lightboxing non rispetta la ridimensionamento manuale né i tag [grid]

Priorità/Gravità: Bassa.
Piattaforma: Confermata in Firefox 127.0 su Windows 10 e Chrome 125.0.6422.165 su Android 14.
Descrizione: Vedi sotto.
Passaggi per la riproduzione: Carica un’immagine con una risoluzione di 690×500 pixel o inferiore e ridimensionala manualmente (ad esempio, ![|336x456,x150](upload://uoNNF6SaHfaM6bRapNRZoeKQqjU.png)) o inseriscila in un [grid] (ad esempio, [grid] ![|336x456](upload://uoNNF6SaHfaM6bRapNRZoeKQqjU.png) [/grid]).


Comportamento previsto

Il modo in cui funziona il lightboxing in Discourse è pensato per funzionare così: se l’immagine è stata rimpicciolita per adattarsi al post, viene visualizzata in lightboxing in modo che possa essere cliccata per vedere la risoluzione completa.

Il problema

C’è un bug in come questo viene attualmente implementato: confronta solo la risoluzione originale dell’immagine con le impostazioni “larghezza massima immagine” e “altezza massima immagine” del sito web (di default 690×500 pixel), ignorando il ridimensionamento manuale e le griglie di immagini. Questo ha la conseguenza che le immagini che sono state rimpicciolite potrebbero non essere visualizzate in lightboxing, se sono al di sotto di [larghezza massima immagine]×[altezza massima immagine].

Ridimensionamento manuale[1]

Ecco un esempio di lightboxing che non si applica quando le immagini sono state rimpicciolite manualmente: passa il mouse sulle seguenti immagini e vedrai che sono visualizzate in modo incoerente; clicca su una visualizzata in lightboxing e vedrai che alcune di esse non appaiono quando premi freccia sinistra o destra:[2]

Griglie di immagini

Il problema nelle griglie di immagini è che le griglie ridimensionano praticamente sempre – e spesso ritagliano – le immagini, il che crea un problema quando poi non possono essere cliccate per vedere l’immagine completa.

La soluzione

Una soluzione aggiornata proposta si trova nella discussione qui sotto.

La soluzione originariamente proposta… La soluzione sarebbe garantire che:
  1. Il lightboxing confronti la dimensione dell’immagine nella pagina con la sua risoluzione originale, e che
  2. Le immagini nelle griglie siano sempre visualizzate in lightboxing.

Per quanto ne so, l’applicazione dei lightbox avviene lato client, quindi non credo che dovrebbe essere proibitivamente difficile, almeno!


  1. Questa parte del problema è stata menzionata in precedenza sul forum, una discussione in cui si è giunti più o meno alla stessa conclusione per quanto riguarda la soluzione. ↩︎

  2. Originariamente, questo causava significativi problemi di formattazione a causa di un problema che ho segnalato separatamente, ma al momento della modifica di questo post e della scrittura di questa sezione, era già stato risolto. ↩︎

6 Mi Piace

Un pensiero che ho avuto è questo: C’è un motivo per non usare il lightbox per tutte le immagini? Almeno per le immagini che potrebbero adattarsi comodamente alla barra delle informazioni e alla piccola icona “espandi” su mobile senza coprire troppo l’immagine. Il lightbox ha valore in due modi oltre a permettere di vedere l’immagine a risoluzione intera:

  • Visualizza il testo alternativo (fondamentalmente, qualcosa che è molto più probabile che venga fornito da un utente rispetto al testo del titolo, poiché il testo alternativo è precompilato e la sintassi per il testo del titolo è più oscura), e
  • L’immagine non viene omessa quando si scorrono le immagini dopo aver cliccato su un lightbox.

C’è un motivo per non usare il lightbox per le immagini che possono essere viste per intero?

Un’opzione potrebbe essere semplicemente quella di (oltre a usare il lightbox per tutte le immagini nelle griglie) usare il lightbox per ogni immagine sopra una certa dimensione nella pagina – diciamo, sopra i 72×72 pixel circa (sto pensando in termini di righe – qualsiasi cosa sopra le ~3 righe di dimensione). Cosa ne pensi?

1 Mi Piace

Sono d’accordo e ho sollevato questo problema in passato come hai collegato nel tuo OP Some images don't lightbox? - #3 by piffy

Il problema, per come lo vedo io, è che le impostazioni “ridimensionato e lightboxed” sono accoppiate.

Idealmente, vorrei che le impostazioni di ridimensionamento fossero simili a questi valori predefiniti di 690x500px, ma le impostazioni di lightbox più vicine a 72x72px (come qualsiasi immagine più grande di un emoji grande o di dimensioni “adesivo”).

Sembra che l’intenzione principale del lightbox sia visualizzare una versione non scalata dell’immagine, ma io lo uso decisamente più come una galleria in stile carosello. Ecco perché è un po’ stridente quando qualcosa alto 502px viene trattato diversamente da qualcosa alto 499px, specialmente quando sono nella stessa griglia.

1 Mi Piace

Penso che sia un’ottima sintesi di ciò che stavo pensando: questo è l’unico caso d’uso in cui non si vorrebbe una lightbox, vero: quando l’immagine è più “parte del testo” o “parte della formattazione del post”.

Penso che sia una soluzione migliore nel complesso: separare le “immagini della lightbox al di sopra della dimensione […]” in una propria impostazione con un valore predefinito molto più basso. Avrebbe senso che differisse dall’implementazione attuale in due ulteriori modi:

  • Dovrebbe valutare in base alla dimensione sulla pagina, anziché alla dimensione originale dell’immagine.
  • Probabilmente dovrebbe superare entrambe le dimensioni, anziché solo una: non riesco a immaginare un caso d’uso in cui si vorrebbe che un’immagine di, ad esempio, 690x10 pixel (sulla pagina) venisse visualizzata in lightbox.

Come nota sui casi d’uso, a volte includo piccole immagini in modo simile a un’emoji, ma sono ad alta risoluzione, in modo che non siano sfocate su schermi ad alta densità di pixel. Ad esempio:

! Questa immagine non dovrebbe essere visualizzata in lightbox, poiché 1) è un emoticon, ma soprattutto 2) la piccola icona di espansione nell’angolo in basso a destra ne coprirebbe la maggior parte sui dispositivi mobili. Al momento, non viene visualizzata in lightbox perché l’immagine originale ad alta risoluzione ha una dimensione inferiore a 690x500 pixel (esattamente 372x468 pixel), ma non dovrebbe essere visualizzata in lightbox nonostante sia stata ridimensionata: il criterio veramente importante da valutare è la sua dimensione sulla pagina.

1 Mi Piace

Le immagini con una risoluzione di 100 x 100 pixel o superiore ora sono in lightbox.

4 Mi Piace