Caricamento dinamico CSS basato sull'utente

1

Voglio fornire un tema dell'interfaccia utente diverso in base all'utente che ha effettuato l'accesso. Per questo ho trovato le seguenti 2 opzioni:

  • Crea file separati per tutti i temi duplicando tutti i CSS comuni. In questo modo posso facilmente fare il login nello scripting e ottenere il file CSS richiesto. Ma finisco per avere lo stesso codice di classi CSS in molti file di temi diversi. Questo è un vero dolore quando devi cambiare qualcosa di comune a tutti i file.
  • Crea un file comune e file di temi separati contenenti solo CSS specifici per tema. In questo modo ogni volta che ho bisogno di caricare 2 file CSS, uno - file comune per impostazione predefinita e quindi caricare il file specifico del tema per sovrascrivere le classi CSS predefinite.

Se c'è un altro modo semplice e facile per farlo, per favore fammelo sapere.

    
posta Harry Joy 17.07.2014 - 10:45
fonte

1 risposta

1

Assolutamente andare con l'opzione 2, sarà molto più facile da mantenere. Puoi strutturare il tuo CSS in questo modo:

css/
 |---default.css
 |---users/
       |----user1.css
       |----user2.css
       |----user3.css

Ho implementato una funzionalità simile sul mio sito web. Invece di dare a ciascun utente un foglio di stile, ho diversi fogli di stile predefiniti che l'utente può passare. Uso JavaScript per cambiare tra fogli di stile e un cookie per salvare le loro preferenze sul sito.

Un'altra cosa che ho fatto è il mio equivalente di default.css , ho solo il codice che è uguale tra gli stili e ho un foglio di stile aggiuntivo che viene applicato di default (ad esempio defaultuser.css ).

    
risposta data 17.07.2014 - 21:37
fonte

Leggi altre domande sui tag