2012-08-15 34 views
0

我有以下代码,我想使用css突出显示当前选定的选项卡。动态突出显示使用css的选项卡

<div id="Maintabs"> 
    <ul class"tablist"> 
    <li><a href="AshukuWeb.jsp?VIEW=Summary" target=_top>Summary</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Advanced" target=_top>Advanced</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Expert" target=_top>Expert</a></li> 
</ul> 
</div> 

有没有什么办法可以做到这一点?我知道CSS悬停给出的鼠标是hovere元素,是有选择的

感谢球员类似的东西,

是的,我确实需要动态处理,所以我也告诉你的方式。我捕获该选项卡和类上的单击事件。在CSS我将所需的样式应用到该类,但它不起作用。

这里是我的代码:

在JavaScript

$('#summary').click(function(){ 
       $(this).addClass("selected"); 
     alert(" summary"); 
      }); 

HTML代码:

<div id="Maintabs"> 
     <ul> 
      <li style="width: 100px;"><a id="summary" href="AshukuWeb.jsp?VIEW=Summary" target=_top>Summary</a></li> 
      <li style="width: 100px;"><a id="advanced" href="AshukuWeb.jsp?VIEW=Advanced" target=_top>Advanced</a></li> 
      <li style="width: 100px;"><a id="expert" href="AshukuWeb.jsp?VIEW=Expert" target=_top>Expert</a></li> 
     </ul> 
     </div> 

CSS代码:

.selected{ 
    background-color:#FEE0C6; 
} 

你觉得我在做什么错误??

+0

是什么让它成为一个标签?你在用JS吗? – hsalama 2012-08-15 21:06:06

+0

你的问题没有清楚地说明情况 你为什么不发布jsfiddle? – rzr 2012-08-15 21:06:44

+0

如果您使用的JS解决方案来实现这些选项卡,那么你应该看看http://jqueryui.com/demos/tabs/ 它会自动给活动选项卡 – rzr 2012-08-15 21:08:16

回答

0

我不知道如何使用纯CSS来产​​生选项卡效果。您通常需要Javascript或jQuery来动态更改当前选项卡的内容。

但是,如果您的使用JavaScript或jQuery作为选项卡效果,您可以简单地添加一个类以突出显示选定的选项卡。

例如,这可能是你的jQuery:

$("#tab1").addClass("selected-tab"); 

这你的CSS:

.selected-tab 
{ 
    /*Some style to highlight it and show it's the selected tab*/ 
} 
+0

一个'选定'类我试过这样做,但这并不能解决问题。 在上面发布我的代码 – 2012-08-15 21:37:10

+0

您是使用Javascript还是使用jQuery来创建选项卡效果? – LonelyWebCrawler 2012-08-15 21:37:56

+0

我使用jquery: 在$(document).ready(function(){ – 2012-08-15 21:42:38

0

你会想打一个活动类。通过给你的li定义的类激活。然后你可以使用CSS来创建。活性不同的颜色,大小,形状等

下面是一个例子(第一LI):

HTML

<div id="Maintabs"> 
    <ul class"tablist"> 
    <li class="active"><a href="AshukuWeb.jsp?VIEW=Summary" target=_top>Summary</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Advanced" target=_top>Advanced</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Expert" target=_top>Expert</a></li> 
</ul> 
</div> 

下面是一个例子(第二LI):

HTML

<div id="Maintabs"> 
    <ul class"tablist"> 
    <li><a href="AshukuWeb.jsp?VIEW=Summary" target=_top>Summary</a></li> 
    <li class="active"><a href="AshukuWeb.jsp?VIEW=Advanced" target=_top>Advanced</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Expert" target=_top>Expert</a></li> 
</ul> 
</div> 

下面是一个例子(第三LI):

HTML

<div id="Maintabs"> <ul class"tablist"> 
    <li><a href="AshukuWeb.jsp?VIEW=Summary" target=_top>Summary</a></li> 
    <li><a href="AshukuWeb.jsp?VIEW=Advanced" target=_top>Advanced</a></li> 
    <li class="active"><a href="AshukuWeb.jsp?VIEW=Expert" target=_top>Expert</a></li> 
</ul> 
</div> 

CSS

#maintabs.active {background-color: #000;} 
#maintabs {background-color: #ccc;} 

结果将是有源标签被黑(#000),和非活动标签为浅灰色(#ccc)

+0

你应该补充说这对于纯CSS来说是不可能的,因为这个类需要使用Javascript动态添加。 – LonelyWebCrawler 2012-08-15 21:27:10

相关问题