<!DOCTYPE>
<html>
<head>
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	<title>CSS3侧滑导航</title>
	<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
	<style type="text/css">
	*{padding: 0;margin: 0;}
		nav{
			width: 100%;
			height: 50px;
			background-color: rgba(26,188, 156, 0.75);
			position: relative;
		}
		div{
			position: absolute;
			height: 100%;
			width: 50px;
			left: 20px;
			cursor: pointer;
			-webkit-transition: transform 1s;
			-moz-transition: transform 1s;
			-ms-transition: transform 1s;
			-o-transition: transform 1s;
			transition: transform 1s;
		}
		#hide,#show{
			display: block;
			height: 3px;
			background-color: #FFF;
			position: absolute;
			top: 50%;
			-webkit-transition: opacity .5s;
			-moz-transition: opacity .5s;
			-ms-transition: opacity .5s;
			-o-transition: opacity .5s;
			transition: opacity .5s;
		}
		#show{
			width: 20px;
			left: 15px;
			opacity: 0;
		}
		#hide{
			width: 30px;
			left: 10px;
			margin-top: -1.5px;
		}
		#hide::before,#hide::after,#show::before,#show::after{
			content: "";
			display: block;
			height: 3px;
			background-color: #FFF;
			position: absolute;
		}
		#hide::before,#hide::after{
			width: 30px;
		}
		#show::before,#show::after{
			width: 25px;
		}
		#hide::before,#show::before{
			top: -10px;
		}
		#hide::after,#show::after{
			top: 10px;
		}
		#show::before{
			 -webkit-transform: rotate(35deg) translateX(5px);
			 -moz-transform: rotate(35deg) translateX(5px);
			 -ms-transform: rotate(35deg) translateX(5px);
			 -o-transform: rotate(35deg) translateX(5px);
			 transform: rotate(35deg) translateX(5px);
		}
		#show::after{
			  -webkit-transform: rotate(-35deg) translateX(5px);
			 -moz-transform: rotate(-35deg) translateX(5px);
			 -ms-transform: rotate(-35deg) translateX(5px);
			 -o-transform: rotate(-35deg) translateX(5px);
			 transform: rotate(-35deg) translateX(5px);
		}
		ul{
			list-style: none;
			background-color: #455552;
			position: absolute;
			top: 50px;
			left: -200px;
			width: 74px;
			-webkit-transition: all .5s ease-in-out;
			-moz-transition: all .5s ease-in-out;
			-ms-transition: all .5s ease-in-out;
			-o-transition: all .5s ease-in-out;
			transition: all .5s ease-in-out;
		}
		li{
			margin: 0;
			padding: 0;
			position: relative;
			text-align: center;
		}
		a{
			text-decoration: none;
			color:#FFF;
			display: inline-block;
			height: 40px;
			line-height: 40px;
		}
		li:hover{
			background-color: rgba(26,188, 156, 0.75);
		}
	</style>
</head>
<body>
	<nav>
		<div id="toggleMenu">
			<span id="hide"></span>
			<span id="show"></span>
		</div>
		<ul id="list">
			<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>
	</nav>
	<script type="text/javascript">
		var toggle = document.getElementById("toggleMenu");
		var list = document.getElementById("list");
		var hide = document.getElementById("hide");
		var show = document.getElementById("show");
		var isHidden = true;

		window.onload = function() {
			toggle.onclick=function(){
				if(isHidden){
					list.style.left="0px";
					isHidden = false;
					hide.style.opacity=0;
					this.style.mozTransform = "rotate(180deg)";
					this.style.msTransform = "rotate(180deg)";
					this.style.oTransform = "rotate(180deg)";
					this.style.webkitTransform = "rotate(180deg)";
					this.style.transform = "rotate(180deg)";
					show.style.opacity=1;
				}else{
					list.style.left="-200px";
					isHidden = true;
					hide.style.opacity=1;
					this.style.mozTransform = "rotate(0deg)";
					this.style.msTransform = "rotate(0deg)";
					this.style.oTransform = "rotate(0deg)";
					this.style.webkitTransform = "rotate(0deg)";
					this.style.transform = "rotate(0deg)";
					show.style.opacity=0;
				}
			}
		}
	</script>
</body>
</html>

  

CSS3侧滑导航的更多相关文章

  1. css3动画导航实现

    代码 <!DOCTYPE html> <!-- saved from url=(0223)file:///C:/Users/user/AppData/Local/Temp/HZ$D. ...

  2. Android之侧滑导航栏

    今天学习的新内容是侧滑导航栏,我想大家肯定都比较熟悉了,因为这个效果在qq里面也有,最近一直跟室友们玩的游戏是快速让自己的头像的点赞量上千.当然我的效果跟qq是没有办法比的,因为那里面的功能是在是太强 ...

  3. Android 使用Toolbar+DrawerLayout快速实现仿“知乎APP”侧滑导航效果

    在以前,做策划导航的时候,最常用的组件便是SlidingMenu了,当初第一次用它的时候觉得那个惊艳啊,体验可以说是非常棒. 后来,Android自己推出了一个可以实现策划导航的组件DrawerLay ...

  4. 如何用CSS和jQuery实现一个侧滑导航菜单

    为了建立导航菜单,让我们先看看html结构:<!DOCTYPE html><html lang="en"><head> <meta cha ...

  5. 使用CSS3制作导航条和毛玻璃效果

    导航条对于每一个Web前端攻城狮来说并不陌生,但是毛玻璃可能会相对陌生一些.简单的说,毛玻璃其实就是让图片或者背景使用相应的方法进行模糊处理.这种效果对用户来说是十分具有视觉冲击力的. 本次分享的主题 ...

  6. css3制作导航栏

    <!doctype html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  7. 分针网—IT教育:使用CSS3制作导航条和毛玻璃效果

    导航条对于每一个Web前端攻城狮来说并不陌生,但是毛玻璃可能会相对陌生一些.简单的说,毛玻璃其实就是让图片或者背景使用相应的方法进行模糊处理.这种效果对用户来说是十分具有视觉冲击力的.本次分享的主题: ...

  8. NavigationViewDemo【和DrawerLayout搭配使用实现侧滑导航视图界面】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 主要记录NavigationView的使用,而一般情况下NavigationView是和DrawerLayout搭配使用的,还有To ...

  9. jQuery+css3侧边栏导航菜单

    效果体验:http://hovertree.com/texiao/jquery/37/ 代码如下: <!doctype html> <html lang="zh" ...

随机推荐

  1. 局部加权回归、欠拟合、过拟合 - Andrew Ng机器学习公开课笔记1.3

    本文主要解说局部加权(线性)回归.在解说局部加权线性回归之前,先解说两个概念:欠拟合.过拟合.由此引出局部加权线性回归算法. 欠拟合.过拟合 例如以下图中三个拟合模型.第一个是一个线性模型.对训练数据 ...

  2. Spring MVC 的 研发之路 (二)

    二.web.xml的简单配置介绍1 1.启动Web项目时,容器回去读web.xml配置文件里的两个节点<context-param>和<listener> 2.接着容器会创建一 ...

  3. 【HDU-4614】Vases and Flowers(线段树双查询)

    11946317 2014-10-23 09:08:28 Accepted 4614 437MS 2348K rid=11946317" target="_blank" ...

  4. PermissionError: [Errno 13] in python

    出现该错误,首先尝试以管理员身份运行 cmd.exe 程序,然后关闭所有的与 python 相关的进程. 1. open 打开一个文件夹(目录),而不是文件 这一错误一般发生在使用 open函数对文件 ...

  5. rest_framework 序列化篇

    感谢alex和武沛齐老师 rest_framework中的序列化表示 from rest_framework import serializersclass RoleSerializer(serial ...

  6. The evolution of cluster scheduler architectures--转

    原文地址:http://www.firmament.io/blog/scheduler-architectures.html cluster schedulers are an important c ...

  7. 学以敩(xiao,效)为敎,以见为觉。醒悟、明白。

    学以敩(xiao,效)为敎,以见为觉.醒悟.明白 上半部分中间的爻是算筹,在古时被用来记数和计算:两边是手,既表示手把手传授,双手也表恭敬与专注:中间是一座房子,表示教学和学习的地方,这个地方不用豪华 ...

  8. Slimming Paint (a.k.a. Redesigning Painting and Compositing)

    Slimming Paint is a Paint team project to re-implement the Blink<->cc picture recording API to ...

  9. git rebase 的使用 (用于撤销某次commit)

    Q: I wrote the wrong thing in a commit message. Alternatively, I've forgotten to include some files. ...

  10. NodeJS学习笔记 进阶 (3)Nodejs 进阶:Express 常用中间件 body-parser 实现解析(ok)

    个人总结:Node.js处理post表单需要body-parser,这篇文章进行了详细的讲解. 摘选自网络 写在前面 body-parser是非常常用的一个express中间件,作用是对http请求体 ...