【发布时间】:2013-06-08 12:02:02
【问题描述】:
我想知道如何为同一文本的两个部分设置不同的样式 input type=text,和谷歌差不多。当您输入几个字符时 在 Google 搜索框中,它们以正常的黑色字体呈现,但它们是 然后是一个以灰色字体呈现的建议完成。所以,我们有两个部分 在同一个输入框中具有不同的字体属性。
【问题讨论】:
-
单个文本框中不能有多种颜色。
我想知道如何为同一文本的两个部分设置不同的样式 input type=text,和谷歌差不多。当您输入几个字符时 在 Google 搜索框中,它们以正常的黑色字体呈现,但它们是 然后是一个以灰色字体呈现的建议完成。所以,我们有两个部分 在同一个输入框中具有不同的字体属性。
【问题讨论】:
文本输入是单色的 - 没有办法。这样的效果只能通过Javascript技巧来实现。
Google 肯定在使用带有灰色文本的 div 元素,该元素悬停在文本输入的上方或下方。 div 起初是不可见的,但是当您开始输入时,它将包含查找文本。它具有与文本输入相同的字体大小。文本输入将包含完整的建议,颜色为黑色。
我想以跨浏览器工作的方式做到这一点并非完全微不足道……但也并非不可能。可能已经存在用于此的组件或 jQuery 插件。
【讨论】:
Google 实际上并没有这样做吗?至少那不是我电脑上的样子。文本框是普通字体,它是建议的完成项目的样式。它们可能只是在 div 或其他东西中重新呈现,而不是输入。
【讨论】:
Google 使用两个直接重叠的文本框。它们有不同的文本颜色,最上面的有一个透明的背景。使用 Firebug 看看它是如何工作的。
【讨论】: