Css 如何禁用链接的引导悬停颜色?

Css 如何禁用链接的引导悬停颜色?,css,twitter-bootstrap,href,Css,Twitter Bootstrap,Href,我正在使用引导 引导定义 a:hover, a:focus { color: #005580; text-decoration: underline; } 我有这个链接/CSS类 <a class="green" href="#">green text</a> <a class="yellow" href="#">yellow text</a> 我想

我正在使用引导

引导定义

a:hover, a:focus {
    color: #005580;
    text-decoration: underline;
}
我有这个链接/CSS类

<a class="green" href="#">green text</a>
<a class="yellow" href="#">yellow text</a>
我想

.yellow {
    color: yellow !important;
}
这不是一个好的做法。

标记
颜色:#005580作为
颜色:#005580!重要的


它将覆盖默认的引导悬停。

我会选择以下选项:

HTML:


CSS:

body{背景:#ccc}
/*绿色的*/
a、 绿色,
a、 绿色:悬停{颜色:绿色;}
/*黄色的*/
a、 黄色,
a、 黄色:悬停{颜色:黄色;}

我不是引导专家,但我觉得您应该定义一个名为nohover的新类(或类似的类),然后在链接代码中添加该类作为最后一个属性值:

<a class="green nohover" href="#">green text</a>
<a class="yellow nohover" href="#">yellow text</a>

在这里分叉JSFIDLE:

如果有人在乎,我最终会得到:

a {
    color: inherit;
}

如果你喜欢一个丑陋的黑客,你永远不应该在现实世界的系统;您可以从document.styleSheets中删除所有:悬停样式规则

只需使用JavaScript检查所有CSS样式,并删除所有规则,这些规则的选择器中包含“:hover”。当我需要从bootstrap 2中删除:悬停样式时,我使用此方法

_.each(document.styleSheets, function (sheet) { 
    var rulesToLoose = []; 
    _.each(sheet.cssRules, function (rule, index) { 
        if (rule.selectorText && rule.selectorText.indexOf(':hover') > 0) { 
            rulesToLoose.push(index);
        }
    });

    _.each(rulesToLoose.reverse(), function (index) {
        if (sheet.deleteRule) {
            sheet.deleteRule(index);
        } else if (sheet.removeRule) {
            sheet.removeRule(index);
        }
    });
});
我确实使用下划线来迭代数组,但也可以使用纯js循环编写这些数组:

for (var i = 0; i < document.styleSheets.length; i++) {}
for(var i=0;i
对于我来说,上面的简单解决方案都不起作用,但是,通过只改变悬停,我就能够让它起作用:

  :hover {
    color: inherit;
    text-decoration: none;
  }

如果要为链接设置默认颜色,但继续使用,请尝试以下操作:

正文a{
颜色:粉红色;/*这是默认链接颜色*/
}
a{
颜色:继承;
}
格林先生{
颜色:绿色
}
瑞德先生{
颜色:红色
}
绿色
红色

默认情况下
这不是答案,bootstrap说hoovered链接获得颜色#005580,但我想覆盖颜色保持不变的定义,正如我所问的:“不覆盖:为每个类悬停”好,我想从bootstrap.css中删除链接样式并根据需要重新设置样式会更好、更好!可能要添加!重要的;以防万一。嗯,那么颜色:没有是诀窍?我会试试看,但我现在在休息日=)我关心wutzebaer…我关心这继承了锚标签的父颜色。它不只是抓住了悬停前的颜色,对吗?因此,为了使其工作,他的标记必须是
Link
,才能使其工作。对吗?@Jackson_Sandland caresIt不适合我。我也需要同样的东西。我需要
背景色:inherit,谢谢!加上一个迷人的哈克加一些解释。请考虑扩大你的答案与一些额外的信息和理解。仅仅一段代码不太可能对未来的访问者有帮助,这是无关紧要的。引导只添加文本颜色,不添加背景。
for (var i = 0; i < document.styleSheets.length; i++) {}
a {background-color:transparent !important;}
  :hover {
    color: inherit;
    text-decoration: none;
  }