【问题标题】:W3C validator error: Attribute placeholder is only allowed when the input type isW3C 验证器错误:仅当输入类型为时才允许使用属性占位符
【发布时间】: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 非常感谢您的努力!事实上,这似乎是验证器中的一个错误,因为它现在显然已修复。

标签: html placeholder w3c-validation html-input


【解决方案1】:

这似乎是验证器中的一个错误。

http://validator.w3.org/http://validator.w3.org/nu/ 这两个验证器都报告说,placeholder 属性“仅在输入类型为 e-mail […] 时才允许使用”。
但是,HTML5 输入类型称为email,而不是e-mail(如果使用type="e-mail",两个验证器都能正确识别)。

不看代码,我猜当使用placeholder 时,他们会检查e-mail 而不是email。它适用于所有其他允许的输入类型。

【讨论】:

猜你喜欢
  • 2013-04-27
  • 1970-01-01
  • 2021-02-03
  • 2020-11-07
  • 1970-01-01
  • 1970-01-01
  • 2013-12-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多