整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          css實現的動態導航菜單,傾斜放置,鼠標懸停回正ht

          css實現的動態導航菜單,傾斜放置,鼠標懸停回正html前端源碼

          家好,今天給大家介紹一款,css實現的動態導航菜單,傾斜放置,鼠標懸停回正html頁面前端源碼(圖1)。送給大家哦,獲取方式在本文末尾。

          圖1

          自帶酷炫動畫效果,支持多級菜單(圖2)

          圖2

          源碼完整,需要的朋友可以下載學習(圖2)

          圖2

          本源碼編碼:20217,需要的朋友,訪問下面鏈接后,搜索20217,即可獲取。

          就愛UI - 分享UI設計的點點滴滴




          lt;!DOCTYPE html>

          <html>

          <head>

          <meta charset="UTF-8">

          <title>導航菜單</title>

          <link rel="stylesheet" type="text/css" href="css/nav.css"/>

          </head>

          <body>

          <!--頭部-->

          <header>

          <div class="container">

          <!--導航條-->

          <ul class="nav">

          <li style="background-color: gold;">

          <a href="#">首頁</a>

          </li>

          <li>

          <a href="#">公司概況</a>

          <ul class="nav-list">

          <li>公司簡介</li>

          <li>發展歷程</li>

          <li>組織機構</li>

          <li>總經理寄語</li>

          </ul>

          </li>

          <li>

          <a href="#">公司文化</a>

          <ul class="nav-list">

          <li>文化理念</li>

          <li>員工活動</li>

          <li>黨/工/團建設</li>

          </ul>

          </li>

          <li>

          <a href="#">公司新聞</a>

          </li>

          <li>

          <a href="#">服務內容</a>

          </li>

          <li>

          <a href="#">法律政策</a>

          </li>

          <li>

          <a href="#">人才招聘</a>

          </li>

          <li>

          <a href="#">聯系我們</a>

          </li>

          </ul>

          </div>

          </header>

          </body>

          </html>

          nav.css

          @charset "utf-8";

          *{

          margin: 0px;

          padding: 0px;

          }


          <svg width="0" height="0">
          			<defs>
          				<filter id="goo">
          					<feGaussianBlur in="SourceGraphic" stdDeviation="10" result="blur" />
          					<feColorMatrix in="blur" mode="matrix" values="1 0 0 0 0  0 1 0 0 0  0 0 1 0 0  0 0 0 19 -9" result="goo" />
          					<feComposite in="SourceGraphic" in2="goo" operator="atop" />
          				</filter>
          			</defs>
          		</svg>
          		<div class="target">
          			<div>
          				<i id="ball1" class="ball"></i>
          				<i id="ball2" ref="ball2" class="ball"></i>
          			</div>
          		</div>
          <div class="menu">
          			<div class="menu-item" @click="updageMenuItem(0)">
          				首頁
          				<span :class="{'menu-item-bg': menuActive==0}">
          					<i class="iconfont"></i>
          				</span>
          			</div>
          			<div class="menu-item" @click="updageMenuItem(1)">
          				發現
          				<span :class="{'menu-item-bg': menuActive==1}">
          					<i class="iconfont"></i>
          				</span>
          			</div>
          			<div class="menu-item" @click="updageMenuItem(2)">
          				消息
          				<span :class="{'menu-item-bg': menuActive==2}">
          					<i class="iconfont"></i>
          				</span>
          			</div>
          			<div class="menu-item" @click="updageMenuItem(3)">
          				我的
          				<span :class="{'menu-item-bg': menuActive==3}">
          					<i class="iconfont"></i>
          				</span>
          			</div>
          		</div>
          
          <script>
          updageMenuItem(index) {
          			this.menuActive=index;
          			let ball2=this.$refs.ball2;
          			Array(4)
          				.fill(0)
          				.map((item, it)=> {
          					ball2.classList.remove('active' + it);
          				});
          			setTimeout(()=>{
          				ball2.classList.add('active' + index);
          			},100)
          		}
          </script>
          
          <style lang="less" scoped>
          .profile {
          	height: 100%;
          	background: #aaaa7f;
          	font-size: 14px;
          	.menu,
          	.target {
          		position: absolute;
          		bottom: 0;
          		width: 100%;
          		height: 50px;
          		left: 0;
          	}
          	.target > div {
          		filter: url('#goo');
          	}
          	.menu {
          		display: flex;
          		z-index: 5;
          		background: #fff;
          		.menu-item {
          			flex: 1;
          			color: #333;
          			display: flex;
          			justify-content: center;
          			align-items: flex-end;
          			padding-bottom: 10px;
          			position: relative;
          			span {
          				position: absolute;
          				height: 35px;
          				width: 35px;
          				background: #aaaa7f;
          				border-radius: 50%;
          				left: 0;
          				right: 0;
          				margin: auto;
          				top: 0;
          				opacity: 0;
          				display: flex;
          				align-items: center;
          				justify-content: center;
          				i {
          					color: #fff;
          					font-size: 20px;
          				}
          				&.menu-item-bg{
          					animation: menuItemBg .5s .2s forwards;
          				}
          			}
          		}
          	}
          	.ball {
          		width: calc(100% + 60px);
          		height: 50px;
          		border-radius: 0;
          		background-color: #fff;
          		position: absolute;
          		left: -30px;
          		margin: auto;
          		z-index: 1;
          	}
          	#ball2 {
          		left: 0;
          		top: 0px;
          		width: 50px;
          		height: 50px;
          		margin: auto;
          		border-radius: 50%;
          		&.active0 {
          			left: calc(((100% / 4) - 50px) / 2);
          			animation: ballUp .5s forwards;
          		}
          		&.active1 {
          			left: calc(((100% / 4) - 50px) / 2 + 100% / 4);
          			animation: ballUp .5s forwards;
          		}
          		&.active2 {
          			left: calc(((100% / 4) - 50px) / 2 + (100% / 4) * 2);
          			animation: ballUp .5s forwards;
          		}
          		&.active3 {
          			left: calc(((100% / 4) - 50px) / 2 + (100% / 4) * 3);
          			animation: ballUp .5s forwards;
          		}
          	}
          }
          @keyframes ballUp {
          	from {
          		top: 0;
          	}
          	to {
          		top: -25px;
          	}
          }
          @keyframes menuItemBg {
          	from {
          		top: 0;
          		opacity: 0;
          	}
          	to {
          		top: -15px;
          		opacity: 1;
          	}
          }

          主站蜘蛛池模板: 国产精品无码亚洲一区二区三区| 国产精品va一区二区三区| 国模无码视频一区| 国产亚洲日韩一区二区三区| 亚洲一区精品视频在线| 肥臀熟女一区二区三区| 久久精品国产亚洲一区二区三区| 午夜视频久久久久一区| 波多野结衣在线观看一区二区三区| 亚洲Av永久无码精品一区二区| 中文字幕日韩一区二区不卡| 黄桃AV无码免费一区二区三区 | 国产精品久久久久久一区二区三区 | 国产精品区一区二区三在线播放| 精品一区二区三区无码免费直播| 加勒比无码一区二区三区| 水蜜桃av无码一区二区| 亚洲av日韩综合一区久热| 在线精品自拍亚洲第一区| 精品欧洲av无码一区二区三区| 精品国产一区二区三区久久狼 | 久久国产高清一区二区三区| 精品理论片一区二区三区| aⅴ一区二区三区无卡无码| 亲子乱av一区二区三区| 中文字幕无线码一区| 亚洲AV一区二区三区四区| 色噜噜狠狠一区二区三区| 国产韩国精品一区二区三区久久| 亚洲韩国精品无码一区二区三区 | 亚洲视频一区在线观看| 精品无码日韩一区二区三区不卡| 亚洲av无码一区二区三区天堂| 无码乱码av天堂一区二区| 日韩有码一区二区| 亚洲日本一区二区一本一道| 中文字幕一区在线| 午夜福利av无码一区二区| 一区视频在线播放| 国产在线精品一区二区在线观看| 国产精品毛片一区二区三区|