如何使用高亮样式制作活动菜单项?

时间:2015-03-20 17:53:52

标签: javascript jquery html css

我希望用彩色方块突出显示活动菜单项。

.main-menu ul {
  padding: 0px;
  margin: 0px;
  text-align: center;
}

.main-menu li {
  list-style: none;
  display: inline-block;
  padding: 40px 0;
}

.main-menu a {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  font-size: 14px;
  margin-right: 5px;
  padding: 5px 5px;
  margin: 0;
  border-radius: 3px;
  /*color: #fff;*/
  line-height: 24px;
  display: inline-block;
}

.main-menu a:hover {
  background-color: #F78E21;
  color: #fff;
}
<div class="main-menu">
  <ul>
    <li><a class="active" href="index.html">Home</a></li>
    <li><a href="about-us.html">About Us</a></li>
    <li><a href="products.html">Projects</a></li>
    <li><a href="contact-us.html">Gallery</a></li>
    <li><a href="contact-us.html">TV Appearances</a></li>
    <li><a href="contact-us.html">Events</a></li>
    <li><a href="contact-us.html">Links</a></li>
    <li><a href="contact-us.html">Testimonials</a></li>
    <li><a href="contact-us.html">Contact Us</a></li>
  </ul>
</div>

2 个答案:

答案 0 :(得分:1)

是吗?

.main-menu a:hover,
.main-menu a.active{
    background-color: #F78E21;
    color: #fff;
}

如果实际上没有class=""active"并且询问如何动态地为每个页面添加它,那将是一个很大的问题。好吧,所有静态代码然后只需在每个页面上手动添加它。如果它在CMS中,那么寻找该平台的解决方案。如果您正在寻找Javascript解决方案,请查看此帖子jQuery add class .active on menu

答案 1 :(得分:0)

试试这段代码。希望这有帮助。

HTML代码段

<div class="main-menu">
 <ul>
 <li><a class="active" href="#">Home</a></li>
 <li><a href="#">About Us</a></li>
 <li><a href="#">Projects</a></li>
 <li><a href="#">Gallery</a></li>
</ul>

JS代码

$(function(){
   $('ul').on('click','a', function(){
      $('a').removeClass();
      $(this).addClass('active');
   });
});

CSS Styel (将此添加到您的css部分 - 您可以更改您想要的任何样式)

.active{
  border:1px solid red;
  color : red;
}