Qual è la differenza tra <div class="">
e <div id="">
quando si tratta di CSS? Va bene usare <div id=""">
?
Vedo diversi sviluppatori che lo fanno in entrambi i modi, e dato che sono autodidatta, non l'ho mai capito bene.
Un id deve essere unico in tutta la pagina.
Una classe può applicarsi a molti elementi.
A volte, è una buona idea usare gli id.
In una pagina, di solito hai un piè di pagina, un'intestazione...
Quindi il piè di pagina può essere in un div con un id
div id="piè di pagina" class="...">
e avere ancora una classe
Gli ID sono unici. Le classi non lo sono. Gli elementi possono anche avere più classi. Inoltre le classi possono essere aggiunte e rimosse dinamicamente ad un elemento.
Ovunque si possa usare un ID si potrebbe invece usare una classe. Il contrario non è vero.
La convenzione sembra essere quella di usare gli ID per gli elementi della pagina che sono su ogni pagina (come "navbar" o "menu") e le classi per tutto il resto, ma questa è solo una convenzione e troverai un'ampia varianza di utilizzo.
Un'altra differenza è che per gli elementi di input dei form, l'elemento <label>
fa riferimento ad un campo per ID quindi devi usare gli ID se hai intenzione di usare <label>
.
Negli anni passati gli ID erano preferiti anche perché sono facilmente accessibili in Javascript (getElementById). Con l'avvento di jQuery e altri framework Javascript questo è praticamente un non problema ora.
La classe serve per applicare il tuo stile a un gruppo di elementi. Gli stili ID si applicano solo all'elemento con quell'ID (dovrebbe essercene solo uno). Di solito si usano le classi, ma se c'è un elemento unico si possono usare gli ID (o semplicemente attaccare lo stile direttamente nell'elemento).