【问题标题】:Input placeholder for IE not workingIE 的输入占位符不起作用
【发布时间】:2014-01-15 15:48:50
【问题描述】:

我有一点问题。我的注册页面很暗,页面上的输入也很暗(有阴影对比)。我没有输入的标签,因为我的占位符文本颜色较浅,非常明显。不幸的是,今天我发现在 Internet Explorer 10 和更早版本上,占位符不存在,因此任何拥有该浏览器的人都只需要猜测输入的用途。有什么我可以做的或解决这个问题吗?

非常感谢。

【问题讨论】:

  • 嗯,占位符在 IE10 中工作正常。

标签: jquery html css internet-explorer input


【解决方案1】:

有一个非常好的 jQuery 插件应该是你所追求的:https://github.com/mathiasbynens/jquery-placeholder。设置完成后,此插件将使您能够像往常一样使用占位符属性。

【讨论】:

  • 不知道为什么你被否决了......如果 OP 需要/想要早期 IE Javascript 中的占位符是唯一可能的解决方案。这里有 10 多个库:github.com/Modernizr/Modernizr/wiki/…
  • @Benjamin - 谢谢,这是一个有用的链接。我认为 SO 上的某个人正在进行几轮驱动式降级。猜猜有人很高兴他们有足够的代表这样做:)
  • @wickywills,该解决方案不适用于 IE 10。(不,我也没有反对你的解决方案,哈哈)。我上传了 js 文件,然后为输入和文本区域激活它,但占位符文本不起作用。我是不是做错了什么?
  • @Justin - 应该可以正常工作。我有使用它的网站,我认为它可以运行到 IE6。您的控制台中是否有任何错误?
  • 不,这是我检查的第一件事,没有错误。如果你说它适用于你的,那么显然我正在做的事情是行不通的。我会继续看下去的。糟糕的是我在 Mac 上,所以我必须“反复试验”并改变一些东西,然后推送到 Heroku,然后打电话给我的妻子,看看她的工作计算机 IE 是否工作哈哈。可能是一个漫长的早晨。似乎您和@Benjamin 都是正确的,所以我会接受您的答案!谢谢你们俩
【解决方案2】:

在输入旁边使用<label>。如果占位符没有出现,用户不能告诉他们应该在字段中输入什么,那么它不适合使用占位符。

来自the specification

占位符属性表示一个简短的提示(一个单词或短 短语)旨在帮助用户在控件具有数据输入时 没有价值。提示可以是样本值或对 预期的格式。 [...]

placeholder 属性不应该被用来代替 标签

【讨论】:

  • 出于设计/UI 目的,此页面上的标签看起来不太好
  • 总是很高兴看到看起来很好优先于工作良好或正确。
  • +1 - 这是与原始问题相关的好信息。不确定你为什么被否决...
【解决方案3】:

IE10 支持占位符,但不支持以下 (Can I use Placeholder)

有什么我可以做的或解决这个问题的吗??

如果你必须有占位符,那么你需要沿着 JavaScript 路线走。 SO上有很多这样的例子,这里有几个。

https://stackoverflow.com/a/10337071/1593273

https://stackoverflow.com/a/19312280/1593273

正如Quentin 所说,如果您显示的信息很重要并且必须对所有用户可见(这也包括屏幕阅读器),那么您的实现是不正确的,应该重新考虑。

如果您支持的浏览器不支持占位符,那么它们只是一种增强功能,不应依赖。

【讨论】:

    猜你喜欢
    • 2023-04-08
    • 2013-09-28
    • 1970-01-01
    • 2016-10-17
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    相关资源
    最近更新 更多