首页 >web前端 >css教程 >纯CSS3创意导航菜单特效

纯CSS3创意导航菜单特效

黄舟
黄舟原创
2017-01-17 17:39:172065浏览

简要教程

这是一款非常有创意的纯CSS3导航菜单特效。该导航菜单主要通过CSS3 transform和transition方法实现效果,非常简单。该特效由進擊的燊提供。

 使用方法

 HTML结构

该导航菜单使用一个c787b9a589a3ece771e842a6176cf8e9元素来包裹一组无序列表。

<nav>
  <ul>
      <li><a href="#">Home</a></li>
      <li><a href="#">Docs</a></li>
      <li><a href="#">Demos</a></li>
      <li><a href="#">中文</a></li>
  </ul>
</nav>

CSS样式

该导航菜单在鼠标滑过菜单项时,菜单项稍稍有些倾斜动画,并且在该菜单项的上下会有两条线条滑出。菜单项的倾斜动画是在菜单项被鼠标滑过时,使用transform属性来对超链接元素进行旋转和缩放。

li a {
    display: block;
    font-size: 20px;
    text-align: center;
    padding: 10px 15px;
}
 
li a:hover {
    transform: rotate(5deg) scale(1.1);
}

菜单项的上下2条线条使用超链接元素的:before和:after伪元素来制作。它们开始时透明度为0,宽度为0,并使用transform属性将它们旋转和移动。

li a:before, li a:after {
    opacity: 0;
    border-top: 1px solid white;
    content: &#39;&#39;;
    display: block;
    position: relative;
    z-index: -1;
    margin: auto;
    width: 0px;
}
 
li a:before {
    top: 0px;
    transform: rotate(120deg) translateY(-50%) translateX(-50%);
}
 
li a:after {
    top: 5px;
    transform: rotate(-60deg) translateY(-50%) translateX(-50%);
}

在鼠标滑过时,它们的透明度变为1,宽度设置为20像素,并采用ease效果的平滑过渡。

li a:hover:before, li a:hover:after{
    transition: all 0.3s ease;
    opacity: 1;
    width: 20px;
}

以上就是纯CSS3创意导航菜单特效的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn