No puede haber espacios en los valores id
o nombres de clase. Cuando se tiene espacios en el valor de la class
atributo especifica múltiples clases que se aplican a ese elemento:
<p class="paragraph one"> <!--Has both "paragraph" and "one" class-->
En cuanto a id
valores, las reglas (HTML4) afirman lo siguiente:
ID y Los tokens de NAME deben comenzar con una letra ([A-Za-z]) y pueden ser seguidos de cualquier número de letras, dígitos ([0-9]), guiones ("-"), guiones bajos ("_") , dos puntos (":") y puntos (".").
Como puede ver, los espacios no son válidos. El HTML5 spec es más leniant, pero los espacios aún no están permitidos (énfasis añadido):
atributo
El ID especifica el identificador único de su elemento (ID). El valor debe ser exclusivo entre todos los ID del subárbol base del elemento y debe contener al menos un carácter. El valor no debe contener caracteres de espacio.
posible duplicado de [nombre de la clase con la manipulación espacios en él html] (http://stackoverflow.com/questions/9284313/handling-class-name-with-spaces-in-it-html) del mismo usuario. –