導航欄 HTML 結構中,<li> 帶有 cname 類表示當前激活態,jQuery 綁定點擊事件移除/添加該類,但點擊後樣式不變。
CSS 選擇器權重問題:#Nav .cname 針對 <li> 設定背景色,但 <a> 標籤內部可能有自己的背景或顏色覆蓋,導致視覺上「沒變」。
將激活態樣式直接應用到 <a> 標籤:
#Nav .cname a { background-color: #ff7a00; color: #fff; }
或在 jQuery 中操作 <a> 的類:
$('#Nav ul li a').click(function() {
$('#Nav ul li a').removeClass('active');
$(this).addClass('active');
});
並將 CSS 改為 #Nav ul li a.active { ... }。
<a> 上,避免被內聯元素覆蓋。