Header, stickybar e footer elastici (per lo meno lato mobile)
Author: Gabriele D.Sono in fase di totale ristrutturazione nelle mie pagine web e, nel tentativo di creare un layout al passo con i tempi, ho dovuto scrivere personalmente la maggior parte dei contenuti come moduli di codice extra HTML e CSS. Nonostante i miei sforzi (sono un principiante a livello di codice... anche perchè altrimenti non credo che continuerei ad usare WSX5), molte delle cose che avrei voluto fare mi sono risultate impossibili. Andare a modificare proprietà interne degli ID, script e oggetti generati automaticamente dal motore di WSX5 su ogni pagina, e quant'altro... è un'impresa piuttosto ardua e non so nemmeno quanto fattibile.
Grazie al lavoro che sto facendo sul mio sito web, credo di aver maturato alcune idee che (per lo meno a mio umile e personale giudizio) permetterebbero al nostro amato software di far qualche piccolo passo avanti, soprattutto sul fronte mobile che ritengo il "lato debole" di WSX5... cosa fra l'altro molto grave visto che ormai il mondo è sempre più mobile oriented!
In realtà avrei molti suggerimenti in mente... ma per il momento vorrei iniziare da questo: Comportamento di header, stickybar e footer.
Riguardo questi oggetti, attualmente WSX5 permette di creare solo strutture "rigide", posizionate all'interno di un loro container con dimensioni e posizioni fisse. Seppur questo comportamento possa essere accettabile per la modalità desktop, non lo è affatto per la modalità smartphone!
Cerco di spiegare meglio.
Ad oggi, i viewport più comuni degli smartphone sono 360px, 375px, 411px, 414px. Alcuni (pochi) arrivano a 480px.
Se allora io scegliessi 480px per il breakpoint smartphone (una scelta piuttosto ovvia, in grado di ricoprire ogni casistica, almeno per la visualizzazione portrait)... ciò che poi WSX5 mi COSTRINGE a fare è progettare header, stickybar e footer su una risoluzione vincolata di 320px! Sinceramente non capisco la logica di questa cosa! È vero che 320px è la più piccola risoluzione tra i viewport degli smartphone presenti in commercio... ma perchè avere questo vincolo? Se il layout di questo breakpoint venisse visualizzato su uno smartphone con viewport 480px avrei inibito la possibilità di sfruttare 1/3 di schermo! Questo lo trovo piuttosto ridicolo, anche perchè il body (al di sotto del breakpoint smartphone) si comporta nella maniera corretta... è completamente elastico, e si adatta alla dimensione del viewport... ma header, stickybar e footer, no... sono un blocco rigido! Allora se voglio che il mio sito renda onore ai viewport dei vari smartphone devo per forza di cose creare una serie di breakpoint molto vicini tra loro... dovrò dunque creare un breakpoint a 360px, a 375px, a 414px, a 480px e impostare posizione e dimensione degli oggetti per ognuno di questi (che è ciò che ho dovuto fare sul mio sito... ma che trovo un lavoro del tutto macchinoso, superfluo e negativo anche a livello di pesantezza del codice)!!!
Il primo consiglio sarebbe dunque quello di permettere un'implementazione elastica anche per header, stickybar e footer... se non per tutto il sito web, per lo meno ad di sotto del breakpoint smartphone!
... idea a parte sempre valida che sarà valutata dagli esperti...
... con breakpoint 360px non guastano in percentuale max 10px di margine sino a 380px...
... con breakpoint 380px non guastano in percentuale max 50px di margine sino a 480px...
... ed titolo informativo, se invece ti riferisci ad immagini, puoi usare semplicemente il tag <img> in oggetto html, che rende le immagini elastiche...
.
+1
Author
Queste sono solo opinioni... ma a parte questo, come vedi già tu hai tirato in ballo 3 breakpoint (360 380 480) per far funzionare la cosa in maniera "zoppa"... quando invece (con una struttura flessibile) ne sarebbe sufficiente uno solo per far funzionare tutto alla perfezione!
... ed titolo informativo, se invece ti riferisci ad immagini, puoi usare semplicemente il tag <img> in oggetto html, che rende le immagini elastiche...
.
Molto probabilmente se dovessi implementare un header o una stickybar completamente da zero, con codice extra, ciò che dici funzionerebbe... e sicuramente con codice personale, ammesso di saperlo fare, si potrebbe anche fare di più. Però, sia header che stickybar di WSX5 sono contenitori statici e rigidi, con un width ed un height parentale fisso che non varia tra un breakpoint ed il successivo. Di conseguenza gli oggetti (che vengono posizionati da editor visuale) hanno anch'essi le loro misure e posizioni che restano fisse in tutto l'intervallo del breakpoint. Mi sembra dunque impossibile fare ciò che sostieni.
L'idea che ho suggerito resta, a mio avviso, una soluzione che renderebbe il programma più "mobile friendly"... anche perchè se guardi qualsiasi sito web creato con i più efficaci framework del momento (bootstrap, flexbox, ...) è sempre previsto un unico breakpoint per la visualizzazione smartphone, solitamente scelto tra i 480 ed i 640px... e tutto si adatta automaticamente ai viewport inferiori in quanto il layout è completamente flessibile e adattabile... con conseguente risparmio di tempo e pesantezza del codice.
+1
Buongiorno Gabriele
Ti ringrazio per il tuo feedback
Una richiesta di questo tipo è stata già proposta più volte nel corso del tempo, e purtroppo mi rincresce informarti che al momento non c'è ancora nessuna novità a riguardo
Posso certamente capire l'utilità della modifica richiesta. Una modifica di questa entità chiaramente comporterebbe la modifica di innumerevoli logiche all'interno del software, perciò si può sicuramente annoverare tra quelle modifiche davvero grandi da realizzare. Ti confermo che la questione è ancora in mano agli sviluppatori in caso dovesse essere presa la decisione di muoversi in questa direzione
Per il momento, non c'è molto altro che posso aggiungere alla questione purtroppo
Ti ringrazio nuovamente per il tuo supporto e feedback sul software mentre continuiamo a lavorare per migliorare il programma sempre di più
Stefano
... magari e nell'attesa, per chi ne fosse proprio interessato, a seconda dei contenuti che devono essere congrui e con codici EXTRA, si potrebbe tentare di ottenere una certa elasticità; ...non ricordo bene ma mi pare già affrontato da qualcuno qualcosa di simile in passato...
.
+1 (anche se non serve: la risposta di Stefano G. è più che eloquente)
+1
+1