【问题标题】:how to style differently two pieces of text in a same input type=text如何在相同的输入类型=文本中对两段文本进行不同的样式设置
【发布时间】:2013-06-08 12:02:02
【问题描述】:

我想知道如何为同一文本的两个部分设置不同的样式 input type=text,和谷歌差不多。当您输入几个字符时 在 Google 搜索框中,它们以正常的黑色字体呈现,但它们是 然后是一个以灰色字体呈现的建议​​完成。所以,我们有两个部分 在同一个输入框中具有不同的字体属性。

【问题讨论】:

  • 单个文本框中不能有多种颜色。

标签: html css


【解决方案1】:

文本输入是单色的 - 没有办法。这样的效果只能通过Javascript技巧来实现。

Google 肯定在使用带有灰色文本的 div 元素,该元素悬停在文本输入的上方或下方。 div 起初是不可见的,但是当您开始输入时,它将包含查找文本。它具有与文本输入相同的字体大小。文本输入将包含完整的建议,颜色为黑色。

我想以跨浏览器工作的方式做到这一点并非完全微不足道……但也并非不可能。可能已经存在用于此的组件或 jQuery 插件。

【讨论】:

    【解决方案2】:

    Google 实际上并没有这样做吗?至少那不是我电脑上的样子。文本框是普通字体,它是建议的完成项目的样式。它们可能只是在 div 或其他东西中重新呈现,而不是输入。

    【讨论】:

    • 激活新的“即时搜索”功能,例如通过切换到美国版 Google
    • 即使在我的文本框中也有正常的字体。仅供参考:我正在使用即时搜索
    • @Pekka:好的,我会调查的。我认为我们都在说的一点是,它实际上不是样式化的文本框。无论如何,为您的答案 +1,这是一个聪明的主意。
    【解决方案3】:

    Google 使用两个直接重叠的文本框。它们有不同的文本颜色,最上面的有一个透明的背景。使用 Firebug 看看它是如何工作的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-02
      • 2012-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-18
      相关资源
      最近更新 更多