Html 输入文本时更改输入和fa图标的颜色

Html 输入文本时更改输入和fa图标的颜色,html,css,Html,Css,当输入文本时,我想更改输入的颜色和相关的字形图标颜色,但是当输入文本时,我使用css更改了文本颜色,但是字形图标颜色没有更改 html <div class="col-sm-4"> <input class="form-control" name="customerBidId" [(ngModel)]="createPlan.customerBidId" placeholder="Bid ID" required> <i class="glyphic

当输入文本时,我想更改输入的颜色和相关的字形图标颜色,但是当输入文本时,我使用css更改了文本颜色,但是字形图标颜色没有更改

html

<div class="col-sm-4">
    <input class="form-control" name="customerBidId" [(ngModel)]="createPlan.customerBidId" placeholder="Bid ID" required>
    <i class="glyphicon glyphicon-credit-card"></i>
  </div>

对焦时glyphicon颜色和文本颜色发生变化,但当焦点被移除时,文本颜色保持不变,但glyphicon返回默认颜色。实际上,您的文本颜色始终是
39529d
,因为您已经使用CSS的第二行在
输入
标记上硬编码了该值

仅当上一个同级输入被聚焦时,您的第一行才会给字形图标上色

input:focus + .glyphicon {
  color: #39529d;
}
input:focus, textarea:focus{
  color: #39529d;
}
此代码应确保文本仅在元素聚焦时才着色

input + .glyphicon {
  color: #39529d;
}
input, textarea{
  color: #39529d;
}

这个代码总是会给它上色。

事实上,你的文本颜色总是
#39529d
,因为你已经用CSS的第二行在
input
标签上硬编码了这个值

仅当上一个同级输入被聚焦时,您的第一行才会给字形图标上色

input:focus + .glyphicon {
  color: #39529d;
}
input:focus, textarea:focus{
  color: #39529d;
}
此代码应确保文本仅在元素聚焦时才着色

input + .glyphicon {
  color: #39529d;
}
input, textarea{
  color: #39529d;
}

这段代码将始终为其着色。

使用jquery可以实现这一点

$('#myText').blur(函数(){
if(该值){
$('.glyphicon').attr('style','color:red');
}否则{
$('.glyphicon').attr('style','color:#39529d');
}
})
输入:焦点+.glyph图标{
颜色:红色;
}
输入、选择、文本区域{
颜色:#39529d;
}

使用jquery可以实现这一点

$('#myText').blur(函数(){
if(该值){
$('.glyphicon').attr('style','color:red');
}否则{
$('.glyphicon').attr('style','color:#39529d');
}
})
输入:焦点+.glyph图标{
颜色:红色;
}
输入、选择、文本区域{
颜色:#39529d;
}


您必须只使用
css
?如果不可能,它可以是scss。如果不可能,它可以是scss。如果不满足条件,它可以是scss。因为字形图标和文本颜色只有在聚焦时才应该更改,或者我的输入字段中有数据。因此,如果输入中有内容,你想给字形上色吗?是的,很明显,否则默认的颜色啊,仅仅用CSS是不可能的。允许使用JavaScript吗?它不满足条件,因为字形图标和文本颜色只有在焦点或我的输入字段中有数据时才应该更改啊,所以如果输入中有内容,你想给字形上色吗?是的,很明显,否则默认的颜色啊,仅仅用CSS是不可能的。允许使用JavaScript吗?