在输入占位符中加下划线的单个字母

dth*_*ree 3 css placeholder underline

可以将CSS样式应用于占位符,例如Firefox:

::-moz-placeholder { text-decoration: underline; }
Run Code Online (Sandbox Code Playgroud)

但是,我想要做的是在占位符中用单个字母加下划线,以便暗示热键供用户按下(类似于文件菜单中的Windows),例如FFirst Name下面加下划线:

<input type='text' placeholder='First Name' />
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

Miz*_*man 7

我认为你只能在谷歌浏览器中使用CSS来实现这一点.例如:

您可以选择占位符的第一个字母

::-webkit-input-placeholder::first-letter {
  color: red;
  text-decoration:underline; 
}
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

设置为:Chrome中的第一个字母(版本39.0.2171.71)时,文本修饰不会呈现.所以我们可以用border-bottom来实现下划线.

::-webkit-input-placeholder::first-letter {
  color: red;
  border-bottom: 1px solid red;
}
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

更新:文本修饰在Chrome 41.0.2235.0 Canary上运行正常.

在此输入图像描述

这是演示:http://codepen.io/MizR/pen/myeJZe

不幸的是,这个解决方案不适用于Firefox.:(

更新2:不再有效.:(

  • 无论浏览器使用样式占位符做什么都不是错误,因为没有规范说您应该能够将CSS应用到它们或者可能存在哪些限制. (3认同)