W3C 验证器错误:仅当输入类型为时才允许使用属性占位符
Posted
技术标签:
【中文标题】W3C 验证器错误:仅当输入类型为时才允许使用属性占位符【英文标题】:W3C validator error: Attribute placeholder is only allowed when the input type is 【发布时间】:2015-06-02 16:39:17 【问题描述】:给定 html 文档
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
</head>
<body>
<form>
<input type="email" placeholder="E-Mail"/>
</form>
</body>
</html>
W3C validator (v1.3) 给出以下错误消息:
第 8 行,第 48 列:属性
placeholder
仅在输入类型为电子邮件、号码、密码、搜索、电话、文本或 url 时才允许。
为什么?
【问题讨论】:
有一些文档htmlgoodies.com/html5/tutorials/…。您的代码中似乎一切正常。 @nicael:您介意详细说明一下吗? @Alexey:感谢您的链接。我只是想知道为什么验证器将此 HTML 标记为不正确。 我已经在 Chrome、Firefox 和 IE 中尝试过你的代码。在所有三种情况下,占位符都在那里(在输入字段中)。也许验证器中存在一些错误? @Alexey 非常感谢您的努力!事实上,这似乎是验证器中的一个错误,因为它现在显然已修复。 【参考方案1】:这似乎是验证器中的一个错误。
http://validator.w3.org/ 和 http://validator.w3.org/nu/ 这两个验证器都报告说,placeholder
属性“仅在输入类型为 e-mail
[…] 时才允许使用”。
但是,HTML5 输入类型称为email
,而不是e-mail
(如果使用type="e-mail"
,两个验证器都能正确识别)。
不看代码,我猜当使用placeholder
时,他们会检查e-mail
而不是email
。它适用于所有其他允许的输入类型。
【讨论】:
谢谢。现在似乎在validator.w3.org 和validator.w3.org/nu 中都已修复。 @user2286693:是的,没错。 fix is mentioned on the mailing list(和also in another thread)。以上是关于W3C 验证器错误:仅当输入类型为时才允许使用属性占位符的主要内容,如果未能解决你的问题,请参考以下文章
仅当其他 simple_form 字段等于某个输入时才验证存在?