¿Cuáles son los caracteres permitidos como nombres de las clases CSS y como valores de los atributos id
de HTML? Se que todos estos caracteres no están permitidos, pero me gustaría saber todos los que sí se permiten.
Caracteres no permitidos: ~ ! @ $ % ^ & * ( ) _ + - = , . / ' ; : " ? > < [ ] \ { } | ` #
Estás leyendo una traducción autorizada de la pregunta What characters are valid in CSS class selectors? planteada por Darryl Hein en StackOverflow.
Respuestas
Para salir de dudas lo mejor es consultar el estándar de CSS en la sección que explica cómo deben ser los identificadores usados en CSS.
Estos identificadores se aplican para los nombres de los elementos HTML, para las clases CSS y para los atributos id
. Sus reglas básicas son:
- El primer carácter debe ser un guión bajo (
_
), un guión medio (-
) o una letra. - Los siguientes caracteres pueden ser guiones bajos (
_
), guiones medios (-
), letras o números. - Si el primer carácter es un guión medio (
-
), el siguiente carácter debe ser una letra o un guión bajo. - El nombre completo del selector debe tener al menos dos caracteres.
Técnicamente todas estas reglas se indican mediante la siguiente expresión regular:
-?[_a-zA-Z]+[_a-zA-Z0-9-]*
@librosweb
6 octubre 2014, 20:41