La especificación HTML permite puntos (.) En una identificación:
<img id="some.id" />
Sin embargo, el uso de una regla de selección de ID de CSS no coincidirá correctamente:
#some.id { color: #f00; }
La especificación CSS para selectores de ID no menciona este caso. Entonces, ¿asumo que está usando la combinación de un nombre de etiqueta y un selector de clase ? Por ejemplo, una regla CSS de a.className
se aplicaría a todas las etiquetas de anclaje ( <a>
) con un nombre de clase de className
, como <a class="className"></a>
.
¿Es posible tener una regla de archivo CSS externa que haga referencia a un elemento HTML por su ID que tiene un punto?
No espero que no, ya que CSS especifica que un " identificador " de CSS no incluye el punto como un carácter válido. Entonces, ¿se trata de una discrepancia fundamental entre las especificaciones HTML y CSS? ¿Mi única alternativa es usar un tipo diferente de selección de CSS? ¿Alguien más inteligente que yo puede confirmar o negar esto?
(Quitaría el punto del atributo ID de HTML para simplificar las cosas, pero es una identificación generada por el sistema, por lo que no tengo la capacidad de cambiarla en este caso).
#some.id
está usando la combinación de ID y selector de clase.