Css Chrome电子邮件输入字段内置验证警告视觉偏移
我正在为一个迷你应用程序构建一个超级简单的注册表单,并认为如果可以的话,使用浏览器内置的HTML5验证会很有趣-因此我为表单aCss Chrome电子邮件输入字段内置验证警告视觉偏移,css,html,google-chrome,Css,Html,Google Chrome,我正在为一个迷你应用程序构建一个超级简单的注册表单,并认为如果可以的话,使用浏览器内置的HTML5验证会很有趣-因此我为表单atype=“email”输入了文本,以获得乐趣。将其加载到Chrome(27.0.1453.116)中,并尝试输入无效电子邮件(“lksjdf”或其他内容,您知道),当我尝试提交时,正如预期的那样,会弹出一条错误消息。但意外的是,验证消息与文本框的偏移量约为60像素(给或拿几个)(请注意,电子邮件字段处于活动状态,但错误消息似乎指向密码字段): 如果删除所有样式并只保留
type=“email”
输入了文本,以获得乐趣。将其加载到Chrome(27.0.1453.116)中,并尝试输入无效电子邮件(“lksjdf”或其他内容,您知道),当我尝试提交时,正如预期的那样,会弹出一条错误消息。但意外的是,验证消息与文本框的偏移量约为60像素(给或拿几个)(请注意,电子邮件字段处于活动状态,但错误消息似乎指向密码字段):
如果删除所有样式并只保留标记,则验证消息的位置会得到改进,但与表单字段上的边距和填充量有关:
当我在Firefox中重复这个过程时,验证会正确显示
当我们缩小问题范围时,似乎在表单标记之前有一个
标记会导致问题出现-如果我删除
标记,则验证消息会正确排列
这是Chrome中的一个bug吗?有没有办法强制Chrome的验证消息与输入正确对齐?为什么另一个标签会导致它不对齐
以下是您可以测试/验证的代码:
<!DOCTYPE html>
<html>
<head>
<title>Sample App | Sign Up</title>
<!-- stripped out styles and js -->
</head>
<body>
<!-- stripped out other irrelevant markup -->
<h1>Sign Up</h1>
<form accept-charset="UTF-8" action="" id="new_user" method="post">
<label for="user_name">Name</label>
<input id="user_name" name="user[name]" size="30" type="text" />
<label for="user_email">Email</label>
<!-- This is the validation test field! -->
<input id="user_email" name="user[email]" size="30" type="email" />
<label for="user_password">Password</label>
<input id="user_password" name="user[password]" size="30" type="password" />
<label for="user_password_confirmation">Confirm Password</label>
<input id="user_password_confirmation" name="user[password_confirmation]" size="30" type="password" />
<input class="btn btn-large btn-primary" name="commit" type="submit" value="Create my account" />
</form>
</body>
</html>
示例应用程序|注册
注册
名称
电子邮件
密码
确认密码
在测试提示之前是否重新加载了页面?@e1che,是的。还重新启动了Chrome,以确保我拥有最新版本。我已经用我的标记编辑了这个问题,所以你可以重复测试。你应该添加你的CSS,因为你提供的HTML没有显示问题。@j08691,噢,我想我们正在缩小问题的范围。我的原始标记在表单标记之前有一个
标记。如果将其添加回标记,则问题再次出现。将编辑问题以添加回该标记。