A especificação HTML diz
Os tokens de ID e NOME devem começar com uma letra ([A-Za-z]) e podem ser seguidos por qualquer número de letras, dígitos ([0-9]), hifens ("-"), sublinhados ("_") , dois pontos (":") e pontos (".").
E embora a declaração SGML do HTML 4 use o valor 65536 para NAMELEN, ela indica "Evite limites fixos."
Mas certamente os navegadores, as implementações CSS e os kits de ferramentas JavaScript devem ter alguns limites no comprimento que suportam. Qual é o menor limite seguro para usar em um aplicativo HTML / CSS / JS?
javascript
html
css
PAUSA do sistema
fonte
fonte
Respostas:
Acabado de testar: 1 milhão de caracteres funciona em todos os navegadores modernos: Chrome1, FF3, IE7, Konqueror3, Opera9, Safari3.
Suspeito que IDs ainda mais longos podem se tornar difíceis de lembrar.
fonte
Um limite prático, para mim, é o tamanho de um ID que posso armazenar em minha cabeça enquanto estou trabalhando com HTML / CSS.
Esse limite é geralmente entre 8 e 13 caracteres, dependendo de quanto tempo estou trabalhando e se os nomes fazem sentido no contexto do elemento.
fonte
Às vezes, acabo com IDs muito longos, mas os nomeio de forma consistente para corresponder à sua finalidade exata.
Por exemplo...
Como você pode ver, os seletores são ocasionalmente bem longos. Mas é muito mais fácil IMHO do que trabalhar com algo como o YUI grids.css onde você acaba com IDs como #doc, #bd, # yui-main, etc.
fonte
Se esta é uma questão acadêmica, é muito interessante ... mas no que diz respeito às melhores práticas, você não deve precisar - ou querer - estender isso. Se você precisar armazenar dados sobre um elemento HTML, é melhor colocá-lo em um atributo no objeto DOM.
fonte