2013-04-08 23 views
1

的HTML是:爲什麼我不能通過CSS設置自舉導航欄元素?

 <div class="navbar navbar-fixed-top"> 
     <div class="navbar-inner"> 
      <div class="container"> 
      <a class="brand" href="index.html">my brand</a> 
      <ul class="nav"> 
       <li class="active"><a href="index.html">Home</a></li> 
       <li><a href="try.html" id="emphasize">Emphasize it</a></li> 
      </ul> 
      </div> 
     </div> 
     </div> 

說,我想添加一個背景色。以下是我在CSS文件中輸入的內容:

#emphasize{ 
     background: #99f; 
    } 

但是對導航欄沒有影響。但是,如果我試圖通過HTML style標籤或JavaScript的風格,它的古怪沒關係:

<li><a href="tryit.html" id="emphasize" style="background: #99f">Emphasize it</a></li> 

document.getElementById('emphasize').style.background = '#99f'; 
+0

CSS文件中的任何CSS是否工作?如果沒有,它不包含在你的HTML文件/已上傳 – lifetimes 2013-04-08 09:11:13

+0

你的css代碼在哪裏?在外部文件? – 2013-04-08 09:13:42

+0

@ user125697我自己的樣式文件中的其他樣式定義工作正常。當涉及到導航欄時,它無法工作。 – 2013-04-09 02:25:34

回答

0

我覺得背景顏色是由前面的顏色覆蓋。所以你可以嘗試使用這個CSS。

#emphasize{ 
    background: #99f !important; 
} 

這將迫使渲染使用這種顏色,而不是..

讓我知道,如果它的工作原理。

+0

謝謝。我嘗試過「!重要」,但它仍然不起作用。 – 2013-04-09 02:28:07

+0

此外,我檢查了一個#強調的項目,但在瀏覽器(Firefox,Chrome和Opera)的計算風格中找不到背景屬性。 Javascript方式實際上爲#emphasize節點添加了一個樣式標籤,就像HTML樣式標籤的行爲方式一樣,因此可以工作。 – 2013-04-09 02:33:57