【发布时间】:2013-02-17 15:37:28
【问题描述】:
我想给每个标签一个不同的颜色,但是我该怎么做呢? 我试过像给每个链接或 ul 一个类这样的东西,但这没有用。 我知道答案很简单,但我不知道应该是什么 这是我使用的代码
这是我的css
<style>
.tabs li {
list-style:none;
display:inline;
}
.tabs a {
display:inline-block;
background:#999;
color:#fff;
text-decoration:none;
width:172px;
height:30px;
}
.tabs a.active {
background:#fff;
color:#000;
}
.inhoud {
padding:18px;
width:600px;
padding-top:20px;
width:965px;
height:870px;
}
.tabstitel{
padding:10px;
width:120px;
background:#099;
}
</style>
这是在我的身体里
<ul class='tabs'>
<li class="tab1"><a class="tabstitel" href='#tab1'>titel</a></li>
<li class="tab1"><a class="tabstitel" href='#tab2'>titel</a></li>
<li class="tab1"><a class="tabstitel" href='#tab3'>titel</a></li>
<li class="tab1"><a class="tabstitel" href='#tab4'>titel </a></li>
<li class="tab1"><a class="tabstitel" href='#tab5'>titel</a></li>
和脚本
$('ul.tabs').each(function () {
var $active, $content, $links = $(this).find('a');
$active = $($links.filter('[href="' + location.hash + '"]')[0] || $links[0]);
$active.addClass('active');
$content = $($active.attr('href'));
$links.not($active).each(function () {
$($(this).attr('href')).hide();
});
$(this).on('click', 'a', function (e) {
$active.removeClass('active');
$content.hide();
$active = $(this);
$content = $($(this).attr('href'));
$active.addClass('active');
$content.show();
e.preventDefault();
});
});
【问题讨论】:
-
在您的 JavaScript 中,在顶部,您可以只写 .tabs 而不是 ul.tabs。您想说“样式 .tabs”而不是“使用选项卡类设置任何 ul 样式”。在 CSS 中,您可以只放置 .active 而不是 .tabs a.active。您想说,“样式 .active”而不是“样式任何带有 .tabs 类的元素中的 active 类的链接”--