到目前为止,没有跨浏览器兼容的唯一 CSS 解决方案,这是一个使用 jQuery 的解决方案:
小提琴演示:
http://jsfiddle.net/robertp/M9SGU/
标记:
<ul id="menu">
<li class="gray"><a href="#">All</a></li>
<li class="blue"><a href="#">Item 1</a></li>
<li class="orange"><a href="#">Item 2</a></li>
<li class="green"><a href="#">Item 3</a></li>
</ul>
JavaScript:
$('#menu').on('click', 'li', function(event){
event.preventDefault();
var $item = $(event.currentTarget);
$item.siblings().removeClass('active');
$item.addClass('active');
$item.parent().css('border', '1px solid ' + $item.css('color'));
});
造型:
.gray,
.gray a {
color: gray;
}
.blue,
.blue a {
color: blue;
}
.orange,
.orange a {
color: orange;
}
.green,
.green a{
color: green;
}