【发布时间】:2019-06-01 05:23:36
【问题描述】:
我在下面附上了stackblitz
https://stackblitz.com/edit/angular-dgx3pe
我想要实现的是在单击标签元素时它应该专注于输入。因此 input:focus 类被激活。我相信它可以通过 javascript 实现/jquery.But 我更喜欢角度的方式来实现这一点。
简而言之,这是我想要做的两件事,
- 点击标签时将焦点放在输入元素上。
- 当焦点转移到另一个输入元素并且前一个元素不为空时(如果输入了某些值)。标签应保持其在顶部的位置。
HTML
<input class="input" type="text">
<label class="label">Name</label>
<div>
<input class="input" type="text">
<label class="label">Name</label>
</div>
CSS
p {
font-family: Lato;
}
.input
{
border:none;
border-bottom:1px solid grey;
outline:none;
margin-top:20%;
}
.input:focus
{
border-bottom:1px solid orange;
}
.label
{
position:relative;
left:-170px;
}
.input:focus + .label
{
bottom:20px;
}
【问题讨论】:
-
在元素上的第一个焦点事件之后,您希望标签成为常量吗?
-
你为什么不试试Mat-Input
-
如果输入没有值,标签应该回到原来的位置。但如果它有一些值,它应该是常数,当值被移除并且焦点不在时,它应该回到原来的位置..感谢您的建议,但我试图避免材料..
标签: javascript css angular typescript