当前位置 : 主页 > 网络编程 > JavaScript >

js+css实现三级导航菜单

来源:互联网 收集:自由互联 发布时间:2022-04-19
本文实例为大家分享了js+css实现三级导航菜单的具体代码,供大家参考,具体内容如下 导航菜单hover事件用css实现相对容易,只需要将透明度更改即可,如果想要菜单有一个渐变的效果

本文实例为大家分享了js+css实现三级导航菜单的具体代码,供大家参考,具体内容如下

导航菜单hover事件用css实现相对容易,只需要将透明度更改即可,如果想要菜单有一个渐变的效果,然而可惜的是transition并不支持display,所以用opacity实现效果完全相同。

下面是用css实现的完整代码:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>三级导航菜单</title>
 </head>
 <style>
  *{
 margin: 0;
 padding: 0;
}
body{
 font-size: 16px;
 background-color:#EDEDED ;
 font-style: inherit;
 color:#757576 ;
}
.main{
 width: 1050px;
 margin: 0 auto;
}
.fl{
 float: left;
}
.fr{
 float: right;
}
a{
 text-decoration: none;
 outline: none;
 color:#757576 ;
}
ul,ol{
 list-style: none;
}
.clear{ 
 clear: both;
}
.clearfix{
 *zoom:1;
}
li{
 float: left;
 display: inline-block;
 width: 120px;
 height: 40px;
 text-align: center;
 line-height: 40px;
}
li a:hover{
 color: red;
}
#frist {
 opacity: 0;
}
#frist li{
 float: none;
 position: relative;
}
 li a:hover{
 color: red;
 transition: all 0.5s;
}
:hover{
 transition: all 2s; 
}
#second {
 opacity: 0;
 margin: -40px 0 0 80px;
 padding: 0px;
 position: absolute;
}
#nav_one:hover #frist{
 opacity:1;
 transition: all 2s;
}
#nav_two:hover #second{
 opacity:1;
 transition: all 2s;
}
 </style>
 
 <body>
  <div class="nav main">
   <ul id="nav">
    <li id="nav_one"><a href="#" >一级</a>
     <ul id="frist">
      <li id="nav_two" class="nav_two">
       <a href="#" >二级</a>
       <ul id="second">
        <li><a href="#" >三级</a></li>
        <li><a href="#" >三级</a></li>
        <li><a href="#" >三级</a></li>
       </ul>
      </li>
      <li class="nav_two"><a href="#" >二级</a></li>
      <li class="nav_two"><a href="#" >二级</a></li>
     </ul>
    </li> 
    <li><a href="#" >一级</a></li>
    <li><a href="#" >一级</a></li>
    <li><a href="#" >一级</a></li>
    <li><a href="#" >一级</a></li>
   </ul>
 </div>  
 </body>
</html>

js实现的相对麻烦一点,但也可以,代替了css中hover效果。

<!--<script>
 window.onload = function(){
  var one = document.getElementById("nav_one");
  var frist = document.getElementById("frist");
  var second = document.getElementById("second");
   one.onmouseover = function(){
    frist.style.opacity = "1";
    frist.style.transition = "all 2s";
    frist.style.WebkitTransition = "all 2s";
   }
   one.onmouseout = function(){
    frist.style.opacity = "0";
    frist.style.transition = "all 0.5s";
    frist.style.WebkitTransition = "all 0.5s";
   }
  var two = document.getElementById("nav_two");
   two.onmouseover = function(){
    second.style.opacity = "1";
    second.style.transition = "all 2s";
    second.style.WebkitTransition = "all 2s";
   }
   two.onmouseout = function(){
    second.style.opacity = "0";
    second.style.transition = "all 0.5s";
    second.style.WebkitTransition = "all 0.5s";
   }
  }
</script>-->

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

上一篇:javascript实现自定义滚动条效果
下一篇:没有了
网友评论