2017-08-15 119 views
2

我有一个跨度与我的输入字段重叠,当您在输入字段中键入内容时,它会更新其内容。仅隐藏输入字段的内容

尽管我在输入文本上完美地定位了跨度,但您仍然可以看到文本更粗体,字母更粗。

enter image description here
(场nr.1-与跨度,nr.2-不含)

我试图隐藏整个输入字段,但随后也光标消失,没有这些打字是非常混乱。

有没有一种方法可以只隐藏输入字段的文本?

+3

为什么你甚至需要跨度? – litelite

+1

您的跨度背景可能仍然是透明的,这是默认值。将范围的背景设置为白色以隐藏输入。 – jlahd

+0

我需要它来操纵颜色,就像这里:https://stackoverflow.com/questions/45233743/javascript-how-to-change-color-to-only-part-of-the-string-in-an-输入字段 –

回答

2

只需设置你的输入文本无形光标黑色的:

#box { 
 
     color: transparent; 
 
     caret-color: black; 
 
    }
<input type="text" id="box" value="some_sample_text">

因此,这种方式的文本是不可见的,但曲轴显示。随着你的跨度覆盖这应该是你想要的。但是不要忘记你的输入字段必须具有相同的大小和字体大小,否则插入符号位置错误。

0

好了,经过一段时间后,这是我登陆:

input{ 
 
    position: absolute; 
 
    top: 25px; 
 
    left: 25px; 
 
} 
 
#bottom { 
 
    z-index: 1; 
 
} 
 
#top { 
 
    z-index: 3; 
 
}
<div class="txt"> 
 
<input type="text" id="bottom" value="bottom_box"> 
 
<input type="text" id="top" value="top_box"> 
 
</div><br>

+0

但我需要'top_box'作为一个范围... –

+0

如果您有示例代码或其他内容,请提及它。以便我们能够理解整个问题 –