描述:鼠标悬空在导航栏上时,二级导航栏以动画方式旋转出现。

css动画实现二级导航栏

css动画实现二级导航栏

css动画实现二级导航栏

实现代码:

<!DOCTYPE html>
<html>

 <head>
  <meta charset="UTF-8">
  <title>二级动画导航</title>
 </head>
 <style>
  body {
   background-color: #CCC;
  }
  
  .menu {
   list-style: none;
   padding: 0px;
   margin: 0px;
   height: 58px;
  }
  
  .menu ul {
   list-style: none;
   padding: 0px;
   margin: 0px;
  }
  
  .menu li {
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #292929), color-stop(100%, #252525));
   background: -webkit-linear-gradient(#292929, #252525);
   background: linear-gradient(#292929, #252525);
   border-bottom: 2px solid #181818;
   border-top: 2px solid #303030;
   min-width: 160px;
  }
  
  .menu>li {
   display: block;
   float: left;
   position: relative;
  }
  
  .menu>li:first-child {
   border-radius: 5px 0 0;
  }
  
  .menu a {
   border-left: 3px solid rgba(0, 0, 0, 0);
   color: #808080;
   display: block;
   font-family: 'Lucida Console';
   font-size: 18px;
   line-height: 54px;
   padding: 0 25px;
   text-decoration: none;
  }
  
  .menu li:hover {
   background-color: #1c1c1c;
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #1c1c1c), color-stop(100%, #1b1b1b));
   background: -webkit-linear-gradient(#1c1c1c, #1b1b1b);
   background: -o-linear-gradient(#1c1c1c, #1b1b1b);
   background: linear-gradient(#1c1c1c, #1b1b1b);
   border-bottom: 2px solid #222222;
   border-top: 2px solid #1B1B1B;
  }
  
  .menu li:hover>a {
   border-radius: 5px 0 0 0;
   border-left: 3px solid #C4302B;
   color: #C4302B;
  }
  
  .menu1 {
   left: 0;
   max-height: 0;
   position: absolute;
   top: 100%;
   z-index: 0;
   -webkit-perspective: 400px;
   -moz-perspective: 400px;
   -ms-perspective: 400px;
   -o-perspective: 400px;
   perspective: 400px;
  }
  
  .menu1 li {
   opacity: 0;
   -webkit-transform: rotateY(90deg);
   transform: rotateY(90deg);
   -webkit-transition: opacity .4s, -webkit-transform .5s;
   transition: opacity .4s, transform .5s;
  }
  
  .menu .menu1 li:hover a {
   border-left: 3px solid #454545;
   border-radius: 0;
   color: #ffffff;
  }
  
  .menu>li:hover .menu1,
  .menu>li:focus .menu1 {
   max-height: 2000px;
   z-index: 10;
  }
  
  .menu>li:hover .menu1 li,
  .menu>li:focus .menu1 li {
   opacity: 1;
   -webkit-transform: none;
   -moz-transform: none;
   -ms-transform: none;
   -o-transform: none;
   transform: none;
  }
  
  .menu li:hover .menu1 li:nth-child(1) {
   -webkit-transition-delay: 0s;
   -moz-transition-delay: 0s;
   -ms-transition-delay: 0s;
   -o-transition-delay: 0s;
   transition-delay: 0s;
  }
  
  .menu li:hover .menu1 li:nth-child(2) {
   -webkit-transition-delay: 50ms;
   -moz-transition-delay: 50ms;
   -ms-transition-delay: 50ms;
   -o-transition-delay: 50ms;
   transition-delay: 50ms;
  }
  
  .menu li:hover .menu1 li:nth-child(3) {
   -webkit-transition-delay: 100ms;
   -moz-transition-delay: 100ms;
   -ms-transition-delay: 100ms;
   -o-transition-delay: 100ms;
   transition-delay: 100ms;
  }
  
  .menu li:hover .menu1 li:nth-child(4) {
   -webkit-transition-delay: 150ms;
   -moz-transition-delay: 150ms;
   -ms-transition-delay: 150ms;
   -o-transition-delay: 150ms;
   transition-delay: 150ms;
  }
  
  .menu li:hover .menu1 li:nth-child(5) {
   -webkit-transition-delay: 200ms;
   -moz-transition-delay: 200ms;
   -ms-transition-delay: 200ms;
   -o-transition-delay: 200ms;
   transition-delay: 200ms;
  }
  
  .menu li:hover .menu1 li:nth-child(6) {
   -webkit-transition-delay: 250ms;
   -moz-transition-delay: 250ms;
   -ms-transition-delay: 250ms;
   -o-transition-delay: 250ms;
   transition-delay: 250ms;
  }
  
  .menu li:hover .menu1 li:nth-child(7) {
   -webkit-transition-delay: 300ms;
   -moz-transition-delay: 300ms;
   -ms-transition-delay: 300ms;
   -o-transition-delay: 300ms;
   transition-delay: 300ms;
  }
  
  .menu li:hover .menu1 li:nth-child(8) {
   -webkit-transition-delay: 350ms;
   -moz-transition-delay: 350ms;
   -ms-transition-delay: 350ms;
   -o-transition-delay: 350ms;
   transition-delay: 350ms;
  }
  
  .menu1 li:nth-child(1) {
   -webkit-transition-delay: 350ms;
   -moz-transition-delay: 350ms;
   -ms-transition-delay: 350ms;
   -o-transition-delay: 350ms;
   transition-delay: 350ms;
  }
  
  .menu1 li:nth-child(2) {
   -webkit-transition-delay: 300ms;
   -moz-transition-delay: 300ms;
   -ms-transition-delay: 300ms;
   -o-transition-delay: 300ms;
   transition-delay: 300ms;
  }
  
  .menu1 li:nth-child(3) {
   -webkit-transition-delay: 250ms;
   -moz-transition-delay: 250ms;
   -ms-transition-delay: 250ms;
   -o-transition-delay: 250ms;
   transition-delay: 250ms;
  }
  
  .menu1 li:nth-child(4) {
   -webkit-transition-delay: 200ms;
   -moz-transition-delay: 200ms;
   -ms-transition-delay: 200ms;
   -o-transition-delay: 200ms;
   transition-delay: 200ms;
  }
  
  .menu1 li:nth-child(5) {
   -webkit-transition-delay: 150ms;
   -moz-transition-delay: 150ms;
   -ms-transition-delay: 150ms;
   -o-transition-delay: 150ms;
   transition-delay: 150ms;
  }
  
  .menu1 li:nth-child(6) {
   -webkit-transition-delay: 100ms;
   -moz-transition-delay: 100ms;
   -ms-transition-delay: 100ms;
   -o-transition-delay: 100ms;
   transition-delay: 100ms;
  }
  
  .menu1 li:nth-child(7) {
   -webkit-transition-delay: 50ms;
   -moz-transition-delay: 50ms;
   -ms-transition-delay: 50ms;
   -o-transition-delay: 50ms;
   transition-delay: 50ms;
  }
  
  .menu1 li:nth-child(8) {
   -webkit-transition-delay: 0s;
   -moz-transition-delay: 0s;
   -ms-transition-delay: 0s;
   -o-transition-delay: 0s;
   transition-delay: 0s;
  }
 </style>

 <body>
  <div>
   <ul class="menu">
    <li>
     <a href="#">菜单一
      <ul class="menu1">
       <li>
        <a href="#">子菜单A</a>
       </li>
       <li>
        <a href="#">子菜单B</a>
       </li>
       <li>
        <a href="#">子菜单C</a>
       </li>
       <li>
        <a href="#">子菜单D</a>
       </li>
       <li>
        <a href="#">子菜单E</a>
       </li>
       <li>
        <a href="#">子菜单F</a>
       </li>
       <li>
        <a href="#">子菜单G</a>
       </li>
      </ul>
     </a>
    </li>
    <li>
     <a href="#">菜单二
      <ul class="menu1">
       <li>
        <a href="#">子菜单A</a>
       </li>
       <li>
        <a href="#">子菜单B</a>
       </li>
       <li>
        <a href="#">子菜单C</a>
       </li>
       <li>
        <a href="#">子菜单D</a>
       </li>
       <li>
        <a href="#">子菜单E</a>
       </li>
       <li>
        <a href="#">子菜单F</a>
       </li>
       <li>
        <a href="#">子菜单G</a>
       </li>
      </ul>
     </a>
    </li>
    <li>
     <a href="#">菜单三
      <ul class="menu1">
       <li>
        <a href="#">子菜单A</a>
       </li>
       <li>
        <a href="#">子菜单B</a>
       </li>
       <li>
        <a href="#">子菜单C</a>
       </li>
       <li>
        <a href="#">子菜单D</a>
       </li>
       <li>
        <a href="#">子菜单E</a>
       </li>
       <li>
        <a href="#">子菜单F</a>
       </li>
       <li>
        <a href="#">子菜单G</a>
       </li>
      </ul>
     </a>
    </li>
    <li>
     <a href="#">菜单四
      <ul class="menu1">
       <li>
        <a href="#">子菜单A</a>
       </li>
       <li>
        <a href="#">子菜单B</a>
       </li>
       <li>
        <a href="#">子菜单C</a>
       </li>
       <li>
        <a href="#">子菜单D</a>
       </li>
       <li>
        <a href="#">子菜单E</a>
       </li>
       <li>
        <a href="#">子菜单F</a>
       </li>
       <li>
        <a href="#">子菜单G</a>
       </li>
      </ul>
     </a>
    </li>
    <li>
     <a href="#">菜单五
      <ul class="menu1">
       <li>
        <a href="#">子菜单A</a>
       </li>
       <li>
        <a href="#">子菜单B</a>
       </li>
       <li>
        <a href="#">子菜单C</a>
       </li>
       <li>
        <a href="#">子菜单D</a>
       </li>
       <li>
        <a href="#">子菜单E</a>
       </li>
       <li>
        <a href="#">子菜单F</a>
       </li>
       <li>
        <a href="#">子菜单G</a>
       </li>
      </ul>
     </a>
    </li>
   </ul>
  </div>
 </body>

</html>

 

相关文章: