La mia idea è che l'utilizzo di barre di scorrimento personalizzate, se rimangono nell'ambito di applicazione dell'estetica, ovvero l'aspetto della modifica della skin della barra di scorrimento predefinita, non è una cattiva idea. Gli utenti comprendono immediatamente altre parti personalizzate di una pagina Web come pulsanti personalizzati, caselle di controllo personalizzate, ecc. Hai difficoltà a comprendere l'attributo selezionabile dei pulsanti di voto nei siti stackexchange? Oppure hai problemi a interagire con caselle di testo di input personalizzate per taggare le domande nei siti stackexchange o Yahoo mail? Le barre di scorrimento possono anche essere rapidamente riconoscibili dagli utenti finali, a condizione che non cambino il layout o la funzionalità prevista del browser, ad esempio lo scorrimento nella direzione opposta o la creazione di una barra di scorrimento circolare. Sei a posto finchè cambi la pelle.
Tuttavia, ci sono alcuni problemi con le barre di scorrimento personalizzate che dovresti prendere in considerazione:
- Di solito hanno bisogno di molto tempo per diventare cross-browser
- Potrebbero non essere compatibili con le versioni precedenti, ovvero rilasciando nuove versioni dei browser, potrebbero interrompersi il loro funzionamento.
- Devi implementare manualmente il comportamento di scorrimento. Per questo articolo, considera i pulsanti HTML. Quando aggiungi a loro l'attributo
disabled='disabled'
, il browser non accetterà semplicemente clic o non entrerà più su di essi. Tuttavia, quando si utilizza un elemento <div>
per simulare il comportamento di un pulsante, è necessario implementare il comportamento disabilitato per conto proprio. Le barre di scorrimento personalizzate dovrebbero anche implementare la funzionalità di scorrimento, che è già implementata dal browser.
Nonostante le cose che diciamo, ti consiglio di avviare un progetto di hobby (non di produzione) per sperimentare l'utilizzo e l'implementazione di barre di scorrimento personalizzate. Vedi questa pagina per buoni esempi.