Non ho cambiato idea rispetto a quanto scritto in questo post: la personalizzazione dei form, via CSS o Javascript, dovrebbe essere fatta con tanta accortezza. Cià non toglie che certi progetti possano richiedere interventi pesanti a livello visivo sugli elementi del modulo. In quel caso, quale approccio scegliere?
Fare affidamento sui soli CSS è a mio parere molto limitante. Se per campi di testo o bottoni i risultati ottenibili sono gradevoli e a prova di compatibilità cross-browser, altro è il discorso per elementi come le select, i checkbox o i radio button. Non è raro, allora, vedere form con input testuali e pulsanti modificati e in linea con il look&feel della pagina, ma con select e/o checkbox lasciati nel loro aspetto di default. L'effetto di tale commistione o compresenza non è sempre fantastico.
Meglio allora, a mio modestissimo avviso, affidarsi da subito a soluzioni tutto-fare basate su Javascript e CSS, come il plugin per jQuery jqTransform. Funziona di fatto come un sistema per applicare una skin all'intero modulo, senza creare il gap nella resa visiva come nel caso citato qui sopra. Nel caso in cui Javascript non sia disponibile, il peggio che possa capitare è avere una resa del form nel suo aspetto nativo a seconda del sistema operativo. Un compromesso tutto sommato accettabile.
Che ne pensate?