为什么某些随机字符串在 HTML 中作为背景颜色输入时会产生颜色?
例如,生成红色背景:bgcolor="chucknorris"
<body bgcolor="chucknorris"> test </body>
相反,会产生黄色背景:bgcolor="chucknorr"
<body bgcolor="chucknorr"> test </body>
这适用于各种浏览器和平台。这是怎么回事?
网友回答:
很抱歉不同意,但根据包宇红发布的旧颜色值解析规则,并不等同于,而是等同于非常相似但略有不同的红色色调。我使用Firefox ColorZilla附加组件来验证这一点。chucknorris
#CC0000
#C00000
规则规定:
chucknorris0
chuc knor ris0
ch kn ri
C0 00 00
我能够使用这些规则来正确解释以下字符串:
LuckyCharms
Luck
LuckBeALady
LuckBeALadyTonight
GangnamStyle
说颜色#CC0000
的原始回答者已经编辑了他们的答案以包括更正。
网友回答:
这是Netscape时代的遗留物:
缺少的数字被视为 0[…]。不正确的数字被简单地解释为 0。例如,值 #F0F0F0、F0F0F0、F0F0F、#FxFxFx 和 FxFxFx 都是相同的。
它来自博客文章 关于Microsoft Internet Explorer颜色解析的小咆哮,其中详细介绍了它,包括不同长度的颜色值等。
如果我们依次应用博客文章中的规则,我们会得到以下内容:
chucknorris becomes c00c0000000
c00c 0000 0000
RGB (c00c, 0000, 0000)
最后,给出以下结果:
RGB (c0, 00, 00) = #C00000 or RGB(192, 0, 0)
下面是一个示例,演示了该属性的实际效果,以生成此“惊人”色板:bgcolor
<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>
这也回答了问题的另一部分:为什么会产生黄色?好吧,如果我们应用规则,字符串是:bgcolor="chucknorr"
c00c00000 => c00 c00 000 => c0 c0 00 [RGB(192, 192, 0)]
呈浅黄金色。由于字符串以 9 个字符开头,这次我们保留第二个“C”,因此它最终以最终颜色值结束。
我最初遇到这种情况时,有人指出你可以做到,嗯,它变成了棕色的。color="crap"
网友回答:
原因是浏览器无法理解它,并试图以某种方式将其转换为它可以理解的内容,在这种情况下转换为十六进制值!…
chucknorris
以十六进制中的识别字符开头,还将所有无法识别的字符转换为!c
0
所以在十六进制格式中变成:,所有其他字符都成为并保持在它们所在的位置……chucknorris
c00c00000000
0
c
现在他们被除以 3 表示(红色、绿色、蓝色)……RGB
R: c00c, G: 0000, B:0000
但我们知道 RGB 的有效十六进制只有 2 个字符,这意味着R: c0, G: 00, B:00
所以真正的结果是:
bgcolor="#c00000";
我还在图像中添加了步骤作为您的快速参考:
模板简介:该模板名称为【为什么某些随机字符串在 HTML 中作为背景颜色输入时会产生颜色?】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【HTML】栏目查找您需要的精美模板。