这个great answer提到了当你仍然需要来自所述类的一些样式时,给出ID是一种覆盖现有类元素的好方法。例如,下面我有以下内容:
<ul class="nav navbar-nav navbar-right" id="ft-nav-text">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
</ul>
我想改变文本的一些属性,比如颜色。
#ft-nav-text {
font-size: 18px;
font-family: "Myriad Pro";
color: blue;
}
然而,除非我删除navbar-nav
类,否则文本将不会更改为蓝色,我仍然需要一些样式。我不想破解主 Bootstrap 文件。
答案 0 :(得分:5)
您没有定位要更改的元素,请使用更具体的选择器。
工作示例:
#ft-nav-text > li > a {
font-size: 18px;
font-family: "Myriad Pro";
color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" />
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Brand</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right" id="ft-nav-text">
<li><a href="#">Home</a>
</li>
<li><a href="#">About</a>
</li>
</ul>
</div>
</div>
</nav>
答案 1 :(得分:1)
Bootstrap在引导程序中的.navbar-nav > li > a
上定义了一些样式,即它不是从父类继承color
样式。因此,在其任何父级上定义id
将不起作用。
您需要使用#fg-nav-text a
来覆盖样式。
a {
color: black;
}
#ft-nav-text {
font-size: 18px;
font-family: "Myriad Pro";
color: blue;
}
<ul class="nav navbar-nav navbar-right" id="ft-nav-text">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
</ul>