No hay que olvidar que la clase y la ID no son mutuamente excluyentes. ¡No hay nada que te impida tener ambos!Esto a veces es muy útil, ya que permite que un elemento herede el estilo común junto con otros elementos de la misma clase, además de brindarle un control preciso de ese elemento específico. Otra técnica útil es aplicar varias clases al mismo objeto (sí, class = "algunaClase someOtherClass" es perfectamente válido) Por ejemplo:
<style>
div.box {
float: left;
border: 1px solid blue;
padding: 1em;
}
div.wide {
width: 40em;
}
div.narrow {
width: 10em;
}
div#oddOneOut {
float: right;
}
</style>
<div class="box wide">a wide box</div>
<div class="box narrow">a narrow box</div>
<div class="box wide" id="oddOneOut">an odd box</div>
En teoría, también es posible conseguir CSS sólo se aplica a los elementos que pertenecer a varias clases, por ejemplo div.box.narrow {something: somevalue;} pero desafortunadamente esto no es compatible con todos los navegadores. Actualización 2011: Los selectores de múltiples clases ahora tienen un soporte de navegador casi universal, así que ¡adelante y utilícelos!
que resume mi opinión bastante bien! Use Class y solo use ID como selector cuando sea necesario. Revisaré el libro para ver si hubo más detalles sobre esto ... si no, incluso puedo enviar un correo electrónico a los autores – Adrian
De acuerdo. Puede ser útil elegir nombres de identificación que impliquen unicidad, como "mainsection" o "navbar"." –