Why does HTML think “chucknorris” is a color?

Valid values for id attribute

Why does HTML think “chucknorris” is a color?

Any unknown digit in a HTML color code are treated as  zero so using invalid characters in a color code shows different value.

Missing or incorrect digits are treated as 0 in HTML color code.

For example the values #F0F0F0, F0F0F0, F0F0F, #FnFnFn and FnFnFn are all the same.

Read Also: HTML5 placeholder color with CSS

For example, use “chucknorris“.

Then replace all non valid hexadecimal characters with 0’s i.e. it becomes c00c0000000.

After that, padding out to the next total number of characters divisible by 3 it becomes c00c 0000 0000.

Then, split into three equal groups i.e.
RGB (c00c, 0000, 0000)

Finally, truncate each of the arguments from the right down to 2 characters i.e.
RGB (c0, 00, 00) = #C00000 i.e. RGB(192, 0, 0)

You can see the example with chucknorris :

<td bgcolor="chucknorris" width="25%">chucknorris</td>
<td bgcolor="crap" width="25%">crap</td>
<td bgcolor="pass" width="25%">pass</td>
<td bgcolor="best" width="25%">best</td>

The result will be:


Leave a Reply

Your email address will not be published. Required fields are marked *