有没有办法在某些浏览器中定位电子邮件提示?

Is there a way to position email hints in certain browsers?

my website 如果您单击 'Register' 然后在电子邮件输入中输入不是电子邮件的内容(例如,简单地 'asd'),然后单击 'Sign up'(只需使用任何密码(例如 'Asdasd12'))Chrome 会显示一条消息,告诉您缺少什么。 Firefox 尝试做同样的事情,但如果你做同样的事情,它会在完全错误的地方放置一个笨拙的 'Please enter an email address.' 提示。

有没有办法告诉每个浏览器放置这些电子邮件提示的最佳位置?

(注意:该网站在 IE 中已损坏,但它仍将提示放在正确的位置,它似乎只是 firefox。)

Firefox:Chrome 对比图:

鉴于您已经有各个字段的提示,额外的 HTML5 验证提示可能是不必要的。您可以通过向表单添加 novalidate 属性来关闭它们:

<form action="..." novalidate>
</form>

我发现 this issue 似乎与您的相似。在我的 Firefox 中,HTML5 验证提示的位置正确。我一直无法找到一种一致的跨浏览器方式来设置 HTML5 验证提示的样式。

顺便说一句,您页面上显示/隐藏表单提示的代码使用了 onfocusin 和 onfocusout 事件,Firefox 不支持这些事件(请参阅 the W3schools explanation)。将它们更改为 onfocus 和 onblur 将适当地 show/hide Firefox 以及当前正常工作的其他浏览器中的提示。

<input class="" id="email1" oninput="Check(1)" name="email1" placeholder="Email" maxlength="128" onfocus="Show('email-hint'); Move(1);" onblur="Hide('email-hint');" type="email">