您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

HTML为什么认为“ chucknorris”是一种颜色?

HTML为什么认为“ chucknorris”是一种颜色?

这是netscape时代的遗留物:

丢失的数字被视为0 […]。不正确的数字被简单地解释为0。例如,值#F0F0F0,F0F0F0,F0F0F,#FxFxFx和FxFxFx都相同。

如果我们从博客文章中依次应用规则,则会得到以下信息:

将所有无效的十六进制字符替换为0

chucknorris becomes c00c0000000

填充到下一个可被3整除的字符总数(11-> 12)

c00c 0000 0000

分为三个相等的组,每个分量代表RGB颜色的相应颜色分量:

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",但是,结果变成了褐色。

其他 2022/1/1 18:16:30 有435人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶