2010-07-26 46 views
2

每当我尝试使用超链接/定位标记活动状态,它不起作用。即使我点击链接,它应该显示为处于活动状态,但没有效果。有什么我失踪?超链接标记活动状态不工作

这是一个基本的示例 -

HTML:

   <ul> 
       <li><a class="main" href="">Home</a></li> 
       <li><a href="">About</a></li> 
       <li><a href="">Contact</a></li> 
       <li><a>Search</a></li> 
       <li><a href="">RSS Feed</a></li> 

      </ul> 

     </div> 

CSS:

#navigation ul li a:hover, #navigation ul li a:focus, #navigation ul li a:active { 
       color: #FFF;   
       border: 1px solid #B20000; 
       border-top: 2px solid #B20000; 
       padding: 15px 6px 6px 6px; 
       background: #660000; 
       -moz-transition: color 1s ease; 
       -o-transition: color 1s ease; 
       -webkit-transition: color 1s ease; 
       transition: color 1s ease;  
       text-shadow: 0 0 0.2em #D5E3E7, 0 0 0.2em #D5E3E7; 

     } 

回答

2

为了达到你想要的效果,你应该通过一个网站明智的变量包含值的链接处于活动状态,并且在页面加载,检索的变量,与导航链接比较,如果它们匹配,然后申请活动课或其他东西。

对于css:主动用于显示在确切时刻被推送的链接,而不是哪个链接是活跃的站点明智的。使用服务器端语言(如PHP)可以很容易地实现,但我不知道用客户端语言(如JavaScript)是否可以实现它,如果是这样,我很乐意看到有关它也。

3

没有影响,因为使用的是相同的CSS样式的两种状态链接:

a:hover 
a:active 

您应该为它们设置不同的CSS样式以查看样式中的更改。例如:

#navigation ul li a{ 
    color:#0000ff; 
} 

#navigation ul li a:hover{ 
    color:#ff0000; 
} 
+0

我试过了。它没有工作。我希望我的问题很清楚。当我点击菜单中的活动链接时,它应该应用活动状态的样式。但事实并非如此。只有当我将鼠标悬停在它上面时,它才会变化。例如,如果我点击stackoverflow.com的'TAG'按钮,它会把我带到那个页面,它变成橙色,而其余的链接是灰色的。在我的页面上,这不会发生。 – input 2010-07-26 14:13:54

0

呀,您需要为您的悬停和活动状态,看看会发生任何改变完全不同的风格,尝试:

a:hover { color: blue; text-decoration: underline; } 
a:active { color: black; text-decoration: none; } 

这应该让你看到发生了什么事情。