我使用Bootstrap的navigation: 它具有以下结构:
<nav class="navbar navbar-inverse">
<!--<div class="container">
<a class="navbar-brand" href="#">SOME TITLE</a>
</div>-->
<div class="navbar-header" align="center">
<a class="navbar-brand shortcuts" href="#">Subtitle</a>
</div>
<ul class="nav navbar-nav mine lis">
<li><a href="second.jsp">Link1</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">List of links</a>
<ul class="dropdown-menu">
<li><a href="#">SLink1</a></li>
<li><a href="#">SLink2</a></li>
</ul>
</li>
<li><a href="#">Link3</a></li>
</ul>
</nav>
我有一个包含导航的主文档:
<body>
<header>
<jsp:include page="header.jsp"/>
<jsp:include page="navbar.jsp"/>
</header>
...
我需要在导航链接中添加一些额外的样式,所以我尝试了:
<style>
a {color:red;}
</style>
和
<style>
.navbar a {color:yellow;}
</style>
但是都不行!有什么问题?
编辑:<style>..</style>
部分包含在<html><head>...</head>
中。
答案 0 :(得分:1)
问题是bootstrap正在使用以下CSS来设置链接的样式:
.navbar-inverse .navbar-nav>.active>a
你的CSS试图覆盖它,但它失败了,因为它有一个较低的specifity。
要修复你可以:
答案 1 :(得分:1)
正如我们在评论中提到的,您需要覆盖bootstrap的css,因此使用!important
应用新的CSS规则并回答您的问题:)
另外,请确保您不要经常使用!important标签,这不是一个好习惯
答案 2 :(得分:1)
如果要覆盖bootstrap类,只需将class或id添加到父容器中,并为其添加样式前缀,即可。 CSS allways选择最具体的选择器,如果它们相同,那么它需要最后一个选项