C'est un souvenir des jours Netscape:
Les chiffres manquants sont traités comme 0 [...]. Un chiffre incorrect est simplement interprété comme 0. Par exemple, les valeurs # F0F0F0, F0F0F0, F0F0F, #FxFxFx et FxFxFx sont toutes identiques.
Il s'agit du blog Un petit coup de gueule sur l'analyse des couleurs de Microsoft Internet Explorer qui le couvre en détail, y compris les longueurs variables des valeurs de couleur, etc.
Si nous appliquons les règles tour à tour à partir du billet de blog, nous obtenons ce qui suit:
Remplacez tous les caractères hexadécimaux non valides par des 0
chucknorris becomes c00c0000000
Remplissez le nombre total de caractères suivant divisible par 3 (11 -> 12)
c00c 0000 0000
Divisé en trois groupes égaux, chaque composant représentant le composant de couleur correspondant d'une couleur RVB:
RGB (c00c, 0000, 0000)
Tronquez chacun des arguments de droite à deux caractères
Ce qui donne le résultat suivant:
RGB (c0, 00, 00) = #C00000 or RGB(192, 0, 0)
Voici un exemple démontrant l' bgcolor
attribut en action, pour produire cet échantillon de couleur "étonnant":
<table>
<tr>
<td bgcolor="chucknorris" cellpadding="8" width="100" align="center">chuck norris</td>
<td bgcolor="mrt" cellpadding="8" width="100" align="center" style="color:#ffffff">Mr T</td>
<td bgcolor="ninjaturtle" cellpadding="8" width="100" align="center" style="color:#ffffff">ninjaturtle</td>
</tr>
<tr>
<td bgcolor="sick" cellpadding="8" width="100" align="center">sick</td>
<td bgcolor="crap" cellpadding="8" width="100" align="center">crap</td>
<td bgcolor="grass" cellpadding="8" width="100" align="center">grass</td>
</tr>
</table>
Cela répond également à l'autre partie de la question; pourquoi bgcolor="chucknorr"
produit une couleur jaune? Eh bien, si nous appliquons les règles, la chaîne est:
c00c00000 => c00 c00 000 => c0 c0 00 [RGB(192, 192, 0)]
Ce qui donne une couleur or jaune clair. Comme la chaîne commence par 9 caractères, nous gardons le deuxième C cette fois-ci donc il finit dans la valeur de couleur finale.
J'ai rencontré ce problème à l'origine lorsque quelqu'un m'a dit que vous pouviez le faire color="crap"
et, bien, il apparaît brun.
bgcolor
. Utilisez CSSbackground
.