Il CSS dinamico è abbastanza banale, e anche se le sue applicazioni sono più limitate (vedere come HTML generato dinamicamente con un foglio di stile statico risolve la maggior parte delle esigenze quotidiane, e il CSS stesso incorpora alcuni meccanismi per ottenere semi-dinamiche) , L'ho visto usato in molte occasioni e li uso da solo ogni volta che ne ho bisogno.
Spesso, la parte 'dinamica' fa poco più che combinare più fogli di stile in uno (per ridurre il numero di richieste HTTP) e minimizzarli (per ridurre l'uso della larghezza di banda), ma cose semplici come la sostituzione di variabili (es. i colori usati in tutto il foglio di stile) possono semplificarti la vita. Tuttavia, dato che i CSS hanno una sintassi abbastanza semplice con alcuni avvertimenti, un sistema di elaborazione del testo di uso generale o un linguaggio di scripting come PHP di solito è sufficiente per questo, motivo per cui non si vedono molti sistemi di elaborazione CSS disponibili. / p>
Forse li hai visti in natura, senza riconoscerli. I server che inviano script dinamici di solito utilizzano la riscrittura degli URL in modo che l'URL diventi indistinguibile dai contenuti pubblicati in modo statico. Ciò è necessario perché alcuni browser (in particolare IE) si basano su estensioni per il rilevamento corretto del tipo MIME in determinate circostanze, ignorando (o scartando) qualsiasi intestazione Content-Type che potresti aver inviato.
Per quanto riguarda la memorizzazione nella cache: i fogli di stile vengono richiamati con le richieste GET e renderli memorizzabili nella cache è assolutamente importante per un'esperienza utente decente. Non vuoi vedere la pagina di riscorrimento mentre scarica nuovamente il foglio di stile ad ogni richiesta. Invece, dovresti inserire tutti i parametri che alterano l'output dell'elaborazione del foglio di stile nella stringa di query; una stringa di query diversa produce un URL diverso, che a sua volta causa un errore di cache, quindi ogni volta che i parametri vengono modificati, il foglio di stile verrà scaricato nuovamente, anche se il client memorizza nella cache tutto. Se hai davvero bisogno del CSS che è potenzialmente diverso per ogni richiesta e dipende dagli effetti collaterali, considera la possibilità di inserire la parte non dinamica in un foglio di stile servito staticamente e di servire solo quelle cose dinamicamente che sono assolutamente necessarie per essere dinamiche.