我不知道这是否可能是 Chrome 中的某种错误,或者(很可能)是我做错了什么。如果输入的不是数字,我正在尝试使文本框背景颜色变为红色。
我有这个 html 页面:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>iSPT</title>
<link rel="stylesheet" type="text/css" href="style2.css" />
</head>
<body>
<form >
<input type="number" autofocus />
</form>
</body>
</html>
这是 style2.css:
@CHARSET "ISO-8859-1";
:invalid{
background-color: red;
}
如上所示,这不起作用(如果我输入字母,框不会变成红色)。我有两种方法让它工作。第一个是从输入中删除 autofocus 属性。
或者,如果我将外部文件中的 CSS 内联到 HTML 头中,则验证也可以正常工作。
不过,我希望能够保持自动对焦和外部 css 表。
有任何想法吗?