O título deste post é um pouco diferente de todos os outros que escrevi até hoje aqui no Blog, Sabia que “Chucknorris” é uma cor no HTML? e ele entra em uma nova categoria de variedades aqui.

Pegue sua caneca de chá ou café, uns biscoitos e leia com calma este artigo, que dá uma pincelada bem de leve no passado da programação HMTL e chega a ser nostálgico e curioso.

Estava eu navegando neste vasto universo que chamamos de web depois de algumas horas programando e criando um sistema maroto (que em breve estará a venda aqui no site), e por algum motivo eu precisei pesquisar algo sobre um código em VBA, não me lembro mais o que é rs rs, mas cheguei até um site que não conhecia, o QA, onde encontrei várias discussões e fóruns interessantes, e um deles falava justamente sobre o tema deste post.

Sou da época em que fazíamos páginas da web no bloco de notas, colocávamos gifs e demorava uma eternidade para carregar a página, nos dias de glória usávamos o extinto FrontPage (Para quem está na casa dos 20 e poucos anos e não sabe o que é front page… “O Microsoft FrontPage era um editor HTML da Microsoft que permite criar e gerir páginas e sites da web. Foi considerado um programa componente da suíte de aplicativos Microsoft Office de 1997 a 2003.”… Asssim como o Teams e o OneDrive hoje em dia.

E nesta gloriosa época em que os sites eram feitos literalmente a mão, sem ajuda de programas fantásticos que temos hoje, que praticamente fazem tudo, os sites tinham uma propriedade chamada BGCOLOR, onde era possível definir a cor do Background, traduzindo a cor de fundo poderia ser definida pelo nome das cores, assim como o exemplo abaixo.

<html> <body bgcolor=”red”> </hmtl>

<html> 
<body bgcolor="red"> 
</hmtl>

Se você copiar o código acima em um bloco de notas, colar e salvar o arquivo como .html você terá criado uma página web, e o fundo dela será vermelho, se salvar o bgcolor como Yellow será Amarelo, bgcolor = blue será azul e assim por diante.

Curiosidade - Sabia que Chucknorris é uma cor no HTML?

O grande barato desta história ainda está por vir e você entenderá o que é curioso e intrigante, mas com uma explicação lógica.

Partindo do principio que Blue, Red e Yellow são palavras, algum gênio decidiu testar se seria possível ao invés de colocar o nome das cores colocar o nome de pessoas, e não poderia ser ninguém menos do que ChuckNorris. (Eu tinha notado que o HTML aceitava o nome das cores, mas nem passou pelaminha cabeça colocar nomes de pessoas rs) 

Mas, calma, calma…

Sabia que "Chucknorris" é uma cor no HTML?

Sabia que “Chucknorris” é uma cor no HTML?

Sabemos que Chuck Norris é o mestre dos mestres o senhor dos senhores, mas não é uma exclusividade dele ter uma cor sua na tabela de cores do HTML. rs

(Se você é da geração Z ou pós-millenial com idades entre 8 e 23 anos não deve conhecer o Chuck, dá uma lida neste artigo do ElPais que te ajudará a entender o Mito que ele é)

Testando outros nomes é possível ver que também funciona com outros nomes como o de “Stevensegal”, “Brucelee” e “Denzelwashington” também.

Mas por que isso acontece?

É uma ressaca dos dias do Netscape quando ele usava este formato para renderizar as cores.

Onde em termos simplificados é feita uma conversão das letras para caracteres hexadecimais, e os caracteres não válidos são substituidos pelos zeros.

Os dígitos ausentes ou não válidos são tratados como 0 […]. Um dígito incorreto é simplesmente interpretado como 0. 

É da postagem do blog Um pouco sobre a análise de cores do Microsoft Internet Explorer, que o aborda com muitos detalhes, incluindo comprimentos variados de valores de cores, etc.

Se aplicarmos as regras a risca obteremos o seguinte:

  1. Substitua todos os caracteres hexadecimais não válidos pelos zeros

    chucknorris = c00c0000000

    (Em chucknorris, tudo, exceto C não é um valor hexadecimal válido)

  2. Coloque o próximo número total de caracteres divisíveis por 3 (Chuck Norris =11 seria ChuckNorris0 = 12 caracteres)

    Convertendo ficaria assim c00c 0000 0000

  3. Após isso é feita uma divisão em três grupos iguais, com cada componente representando o componente de cor correspondente de uma cor RGB:

    RGB (c00c, 0000, 0000)

  4. Após isso é truncado cada um dos argumentos da direita para baixo para dois caracteres, reduzindo dois caracteres de cada bloco.

O que fornece o seguinte resultado:

RGB (c0, 00, 00) = #C00000 or RGB(192, 0, 0)

Em resumo…

  • torne a string um comprimento múltiplo de 3 adicionando Zeros: chucknorris0
  • separe a cadeia em três cadeias de comprimento igual: chuc knor ris0
  • truncar cada sequência para 2 caracteres: ch kn ri
  • mantenha os valores hexadecimais e adicione 0 quando necessário: C0 00 00

Se você chegou até aqui tem uma dica bônus …

Faça o teste direto, o @TimPietrusky criou esta incrível ferramenta de demonstração para nomes de cores aleatórios: http://randomstringtocsscolor.com

Mas e ai você sabia que “Chucknorris” é uma cor no HTML?
Eu quando descobri isso fiquei fascinado e achei super interessante, e o você? Me diz ai o que achou e deixe seu comentário.

Grande abraço e até o próximo post aleatório como este que não necessariamente precisa ser de programação, excel ou qualquer coisa técnica aqui do blog.

Abraços

Douglas Godoy




.

Sobre o Autor

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *