li上的类的字体颜色不会呈现,直到在Chrome中不重点为止
我在jQuery / CSS中遇到了一个非常奇怪的问题,我不确定这里出了什么问题。 考虑这个最简单的例子:
#list li {
color:#3c6174;
cursor:pointer;
}
#list li.active {
color:red;
}
<ul id="list">
<li class="active"></li>
<li></li>
<li></li>
</ul>
$buttons = $("#list li");
$buttons.click(function() {
$buttons.removeClass("active");
$(this).addClass("active");
});
在Chrome浏览器中查看代码(小提琴),然后点击其中一个列表按钮。 什么都没发生。 但是,如果您忽略窗口,它会突然激活课程并呈现红色。
它似乎在Firefox中的工作原理应该是这样的:只要列表项被点击,颜色就会切换为红色,而其他颜色会再次变为蓝色。
查看DOM显示该类被删除并添加到clicked元素上,没有任何延迟,所以我不明白为什么它不会立即显示。
这里发生了什么?
PS:在Windows x64上使用33.0.1750.146 m
我认为Chrome的新版本认为,如果标签为空,则不需要重新绘制任何内容,唯一的变化是该类是文本颜色。 在每个元素里面放一个字母,它就可以工作。 或者:放置边框:1px纯红色; 在CSS规则中。 它的工作原理是因为它与元素的框属性有关。
链接地址: http://www.djcxy.com/p/19279.html上一篇: Font color by classes on li are not rendered until unfocus in Chrome