当在HTML中作为背景颜色输入时,某些随机字符串如何产生颜色?例如:
<body bgcolor="chucknorris"> test </body>Run Code Online (Sandbox Code Playgroud)
... 在所有浏览器和平台上生成一个红色背景的文档.
有趣的是,虽然chucknorri也会产生红色背景,但会chucknorr产生黄色背景.
这里发生了什么?
关于我,我总是noob regex.我的目标是检查一个字符串是否是十六进制数的有效重复.目前我的实现(我发现它实际上效率不高)是一个包含所有HEX数字(0,1,... 9,A,B..F)的List,并检查我的字符串是否包含未包含在给定List中的字符.我打赌这可以使用正则表达式轻松完成,但我不知道如何实现它.
private bool ISValidHEX(string s)
{
List<string> ToCheck = new List<string>();
for (int i = 0; i < 10; i++)
{
ToCheck.Add(i.ToString());
}
ToCheck.Add("A");
ToCheck.Add("B");
ToCheck.Add("C");
ToCheck.Add("D");
ToCheck.Add("E");
ToCheck.Add("F");
for (int i = 0; i < s.Length; i++)
{
if( !ToCheck.Contains(s.Substring(i,1)))
{
return false;
}
}
return true;
}
Run Code Online (Sandbox Code Playgroud) 我有几个接受十六进制字符串的表单元素,如下所示。
<input type="text" name="..." onkeyup="a('...')" pattern=\"[a-fA-F0-9]+\" value=\"****\"/>
Run Code Online (Sandbox Code Playgroud)
我有兴趣将模式属性值缩短为更短的值,但仍然接受相同的模式。我这样做是因为这个 html 嵌入在一个微控制器中,节省空间是可取的。是否有预定义的跨浏览器十六进制匹配类?