我需要将文字颜色从红色切换到绿色,反之亦然。
long
CSS
<div id="logoup">DEEP</div>
<button id='btn'>CLICK</button>
JS
#logoup{
color:red;
}
.greened{
color:green;
}
不起作用。控制台是空的。
答案 0 :(得分:5)
在CSS中,id定义的样式优先于类定义的样式。你可以简单地将类名附加到id来修复它,而不需要使用!important
,这只应该作为最后的手段:
#logoup.greened {
color: green;
}
答案 1 :(得分:3)
Activity
比id
占据更高的css特异性。所以类不能过度规则id设置的样式。
以下更改将起作用
<强> CSS 强>
class
<强> HTML 强>
.logoup{ // id changed to class
color:red;
}
.greened{
color:green;
}
答案 2 :(得分:3)
您可以在绿色上使用重要内容,或者您可以使用类控制着色,而不是将其应用于元素。
important!
$("#btn").click(function() {
$('#logoup').toggleClass('greened');
});
&#13;
#logoup {
color: red;
}
.greened {
color: green !important;
}
&#13;
<div id="logoup">DEEP</div>
<button id='btn'>CLICK</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
$("#btn").click(function() {
$('#logoup').toggleClass('red green');
});
&#13;
.red {
color: red;
}
.green {
color: green;
}
&#13;
<div id="logoup" class="red">DEEP</div>
<button id='btn'>CLICK</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
答案 3 :(得分:1)
当您使用id
代替class
时,您必须记住css规则优先级。应用具有最高CSS特异性的样式。不同元素的特异性定义如下:
ID attribute = 100
Class attribute = 10
Element = 1
要检查这个重写你的css:
#logoup{
color:red;
}
.greened{
color:green!important;
}
答案 4 :(得分:0)
选择器优先级。使用!important;
$("#btn").click(function() {
$('#logoup').toggleClass('greened');
});
.greened {
color: green !important;
}
#logoup {
color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="logoup">DEEP</div>
<button id='btn'>CLICK</button>