【发布时间】:2022-12-20 03:29:25
【问题描述】:
我希望当用户过来并尝试在“输入”中键入文本时,标签会上升,如果他们将该区域留空,它就会回到原来的位置。如果用户在那里输入了一些东西,它将留在那儿。
我用输入框尝试了这段代码,要求它工作正常,但是当我尝试用输入来做这个并在输入中添加一些内容时,标签回来了,它需要留在那里。
div{
margin-top:40px;
}
.btn-add input[type="text"]{
width: 90%;
padding: 10px 20px 0 20px;
border: none;
border-bottom:1px solid #999;
font-size: 140%;
color: #000;
}
.btn-add input:focus ~ .floating-label{
top: -20px;
bottom: 10px;
left: 10px;
font-size: 20px;
opacity: 1;
color: rgb(100, 6, 6);
}
.floating-label {
position: absolute;
pointer-events: none;
left: 20px;
top:10px;
transition: 0.2s ease all;
color: #999999;
font-size: 120%;
}
.form-float{
position: relative;
}
<div class="form-float btn-add">
<input type="text" class="inputText" placeholder="" >
<label class="floating-label" >Button text</label>
</div>
我删除了input:not(:focus):valid~.floating-label,这样它就可以处理不需要的字段
【问题讨论】: