设置color:white;
甚至使用该类icon-light
或icon-white
使所有字体真棒图标变白,除了fa-star
无论我做什么都保持黄色!
我尝试过使用与!important
在元素的内联样式中使用一样绝望的方法来覆盖 css。星星仍然是黄色的!(见下图)
为什么会这样,我如何使它变白?
(为了支持IE7,使用font-awesome 3.2.1,别问我为什么)
本质上这是我的标记:
<i class="icon-white icon-star" style="color:white;"></i>
或者就像我在下面截屏时的样子:
<i class="icon-light icon-star" style="color:white !important;"></i>
从图片中可以看出,这个内联样式的规则本质上覆盖了一堆其他的 css 规则,说同样的事情;color
应该是white
。
这种行为特别有趣的是,“Computed Styles”下的 chromes 调试器实际上声称星星是白色的。如您所见,情况并非如此。
编辑:我实际上设法解决了这个问题,但我不知道为什么我的解决方案有效,所以我会留下这个问题,希望有人可以深入了解这里实际发生的事情。这是我所做的:
如果您查看 font-awesome.css,您会发现以下块:
.icon-star:before{
content:"\f005";
}
作为继续研究这个神秘错误的第一步,我将我的类更改<i>
为white-star
并将以下内容添加到我的样式表中:
.white-star:before{
content:"\f005";
}
当我惊讶地发现星星是白色的时,我正打算从那里尝试其他一些东西!
这不再是一个需要解决的问题,但我真的很想知道这里发生了什么,所以我只是把这个问题留着,希望有人可以提供一些见解(对我和社区)。