导航菜单

炫酷菜单线条动画特效UI设计效果

阿里云


这是一款效果非常炫酷的菜单线条动画特效 UI 设计效果。这组菜单线条动画共有 20 种效果,各种效果在用户点击菜单项时,会有不同的线条动画出现。

HTML 结构

所有的菜单都具有相同的 HTML 结构:

也想出现在这里?联系我们
创客主机
  1. <section class="section section--menu" id="Prospero">
  2.  
  3.   <h2 class="section__title">Prospero</h2>
  4.  
  5.   <nav class="menu menu--prospero">
  6.  
  7.     <ul class="menu__list">
  8.       <li class="menu__item menu__item--current">
  9.         <a class="menu__link">Home</a>
  10.       </li>
  11.       <li class="menu__item">
  12.         <a class="menu__link">Who we are</a>
  13.       </li>
  14.       <li class="menu__item">
  15.         <a class="menu__link">What we offer</a>
  16.       </li>
  17.       <li class="menu__item">
  18.         <a class="menu__link">Our news</a>
  19.       </li>
  20.       <li class="menu__item">
  21.         <a class="menu__link">Contact us</a>
  22.       </li>
  23.     </ul>
  24.  
  25.   </nav>
  26.  
  27. </section>

menu__item--current class 类用于标识当前被选择的项。各个效果中的<nav>元素都有自己的 class 类,用于制作不同的线条效果。

CSS 样式

所有菜单的共同 CSS 样式如下。

  1. .menu {
  2.   line-height: 1;
  3.   margin: 0 auto 3em;
  4. }
  5.  
  6. .menu__list {
  7.   position: relative;
  8.   display: -webkit-flex;
  9.   display: flex;
  10.   -webkit-flex-wrap: wrap;
  11.   flex-wrap: wrap;
  12.   margin: 0;
  13.   padding: 0;
  14.   list-style: none;
  15. }
  16.  
  17. .menu__item {
  18.   display: block;
  19.   margin: 1em 0;
  20. }
  21.  
  22. .menu__link {
  23.   font-size: 1.05em;
  24.   font-weight: bold;
  25.   display: block;
  26.   padding: 1em;
  27.   cursor: pointer;
  28.   -webkit-user-select: none;
  29.   -moz-user-select: none;
  30.   -ms-user-select: none;
  31.   user-select: none;
  32.   -webkit-touch-callout: none;
  33.   -khtml-user-select: none;
  34.   -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  35. }
  36.  
  37. .menu__link:hover,
  38. .menu__link:focus {
  39.   outline: none;
  40. }

菜单使用 flexbox 来进行布局,并为链接提供了一些通用样式。由于 IE 浏览器不支持 flexbox,所以在 IE 中菜单的布局会出现错位的情况。下面是第一种菜单线条效果 Prospero 的 CSS 样式:

  1. /* Prospero */
  2. .menu--prospero .menu__link {
  3.   position: relative;
  4.   display: block;
  5.   margin: 0 1.5em;
  6.   padding: 0.75em 0;
  7.   text-align: center;
  8.   color: #b5b5b5;
  9.   transition: color 0.3s;
  10. }
  11.  
  12. .menu--prospero .menu__link:hover,
  13. .menu--prospero .menu__link:focus {
  14.   color: #929292;
  15. }
  16.  
  17. .menu--prospero .menu__item--current .menu__link {
  18.   color: #d94f5c;
  19. }
  20.  
  21. .menu--prospero .menu__link::before {
  22.   content: '';
  23.   position: absolute;
  24.   left: 0;
  25.   bottom: 0;
  26.   width: 100%;
  27.   height: 4px;
  28.   background: #d94f5c;
  29.   transform: scale3d(0, 1, 1);
  30.   transition: transform 0.1s;
  31. }
  32.  
  33. .menu--prospero .menu__item--current .menu__link::before {
  34.   transform: scale3d(1, 1, 1);
  35.   transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  36.   transition-duration: 0.3s;
  37. }

在这个效果中,只是简单的使用伪元素来制作一个线条,然后使它从中间开始扩展。它被使用绝对定位放置在链接的下方,初始化时在 X 方向上被缩小为 0。当用户点击了一个菜单项的时候,线条有 0 变为 1。

炫酷菜单线条动画特效 UI 设计效果

已有 425 人购买
查看演示升级 VIP立刻购买

演示地址 下载地址
收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!