La risposta a questa è la specificità CSS. Devi essere più "specifico" nel tuo CSS in modo che possa sovrascrivere le proprietà del bootstrap css.
Ad esempio hai un codice di esempio per un menu bootstrap qui:
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div id="home-menu-container" class="collapse navbar-collapse">
<ul id="home-menu" class="nav navbar-nav">
<li><a class="navbar-brand" href="#"><img src="images/xd_logo.png" /></a></li>
<li><a href="#intro">Home</a></li>
<li><a href="#about">About Us</a></li>
<li><a href="#services">What We Do</a></li>
<li><a href="#process">Our Process</a><br /></li>
<li><a href="#portfolio">Portfolio</a></li>
<li><a href="#contact">Contact Us</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</nav>
Qui, è necessario ricordare la gerarchia della specificità. Va così:
- Dai un elemento con un ID menzionato 100 punti
- Dai un elemento con una classe di cui 10 punti
- Dai a un elemento semplice un singolo punto
Quindi, per quanto sopra se il tuo CSS ha qualcosa del genere:
.navbar ul li a { color: red; } /* 10(.navbar) + 1(ul) + 1(li) + 1(a) = 13 points */
.navbar a { color: green; } /* 10(.navbar) + 1(a) = 11 points */
Quindi, anche se hai definito il .navbar adopo .navbar ul li a, continuerà a sovrascrivere con un colore rosso, anziché un verde poiché la specificità è maggiore (13 punti).
Quindi, praticamente tutto ciò che devi fare è calcolare i punti per l'elemento per cui vuoi cambiare il CSS, tramite ispeziona l'elemento sul tuo browser. Qui, bootstrap ha specificato i suoi css per l'elemento come
.navbar-inverse .navbar-nav>li>a { /* Total = 22 points */
color: #999;
}
Quindi, anche se il tuo CSS sta caricando viene caricato dopo bootstrap.css che ha la seguente riga:
.navbar-nav li a {
color: red;
}
verrà ancora visualizzato come # 999. Per risolverlo, bootstrap ha 22 punti (calcola tu stesso). Quindi tutto ciò di cui abbiamo bisogno è qualcosa di più. Pertanto, ho aggiunto ID personalizzati agli elementi, ad esempio home-menu-container e home-menu. Ora funzionerà il seguente css:
#home-menu-container #home-menu li a { color: red; } /* 100 + 100 + 1 + 1 = 202 points :) */
Fatto.
È possibile fare riferimento a questo collegamento MDN .