Inserisco dinamicamente dell'Html in una pagina Web (dopo che ho rilevato un evento dall'utente). Questo html ha bisogno di alcuni stili CSS e mi chiedo quale sia il modo più pulito per farlo, usando jQuery. Non sono lo sviluppatore del sito web, quindi non posso aggiungere quelle regole al css originale.Il modo migliore per aggiungere nuove regole css con jquery?
Suppongo di aver già inserito alcuni html senza stile, tra cui una classe formElement
. Posso scrivere nel mio documento una nuova <style>
blocco, per esempio:
my_html = '<style type="text/css">';
my_html += ' .formElement {';
my_html += ' display: block;';
my_html += ' width: 240px;';
my_html += ' position: relative;';
my_html += ' padding: 4px 0;';
my_html += ' }';
my_html += '</style>';
my_html = $(my_html);
$('body').prepend(my_html);
Oppure, posso utilizzare il metodo css
:
$('.formElement').css({
'display': 'block',
'width': '240px',
'position': 'relative',
'padding': '4px 0'
});
Quale soluzione è il migliore/più pulito?
EDIT:
Come non posso aggiungere direttamente le regole del CSS, continuerò con il metodo di jQuery css
. Alcune altre questioni correlate forniscono soluzioni così:
Non posso utilizzare i plugin jQuery, ma se potessi, certamente utilizzare jQuery.Rule
Grazie tutti voi per il vostro prezioso aiuto.
Il tuo secondo codice non funziona se si aggiungono più elementi con quella classe successiva. – Dogbert
Considerate anche che la seconda opzione avrà più specificità in quanto è in linea. – scoota269