您的位置:首页 > 其它

全屏隐藏菜单特效

2015-10-25 22:40 162 查看
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>全屏隐藏菜单特效</title>

<style type="text/css">
* { margin: 0px; padding: 0px; }
body {
background: #383c55;
width: 100%;
height: 100%;
}
#view-code{
color:#4183d7;
font-size:13px;
text-transform:uppercase;
font-weight:700;
text-decoration:none;
position:absolute;top:640px; left:50%;margin-left:-35px;
}
div.screen{
width:320px;
height:560px;
overflow:hidden;
position:absolute;
top:250px;
left:50%;
margin-left:-160px;
background:#31558a;
}

.list{margin-top:36px; text-align:left;}
.item{
height:115px;
margin-top:30px 0;
padding-left:115px;
clear:both;
}
.item .img, .item span{background:#214273; border-radius:3px;}
.item .img{float:left; width:71px; height:71px; margin-left:-93px;}
.item span{height:11px; width:180px; margin-bottom:19px; float:left;}
.item span:nth-of-type(3){width:75px; margin-botom:0;}

div.burger {
height: 30px;
width: 40px;
position: absolute;
top: 11px;
left: 21px;
cursor: pointer;
}
div.x,
div.y,
div.z {
position: absolute; margin: auto;
top: 0px; bottom: 0px;
background: #fff;
border-radius:2px;
-webkit-transition: all 200ms ease-out;
-moz-transition: all 200ms ease-out;
-ms-transition: all 200ms ease-out;
-o-transition: all 200ms ease-out;
transition: all 200ms ease-out;
}
div.x, div.y, div.z { height: 3px; width: 26px; }
div.y{top: 18px;}
div.z{top: 37px;}
div.collapse{
top: 20px;
background:#4a89dc;
-webkit-transition: all 70ms ease-out;
-moz-transition: all 70ms ease-out;
-ms-transition: all 70ms ease-out;
-o-transition: all 70ms ease-out;
transition: all 70ms ease-out;
}

div.rotate30{
-ms-transform: rotate(30deg);
-webkit-transform: rotate(30deg);
transform: rotate(30deg);
-webkit-transition: all 50ms ease-out;
-moz-transition: all 50ms ease-out;
-ms-transition: all 50ms ease-out;
-o-transition: all 50ms ease-out;
transition: all 50ms ease-out;
}
div.rotate150{
-ms-transform: rotate(150deg);
-webkit-transform: rotate(150deg);
transform: rotate(150deg);
-webkit-transition: all 50ms ease-out;
-moz-transition: all 50ms ease-out;
-ms-transition: all 50ms ease-out;
-o-transition: all 50ms ease-out;
transition: all 50ms ease-out;
}

div.rotate45{
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-transition: all 100ms ease-out;
-moz-transition: all 100ms ease-out;
-ms-transition: all 100ms ease-out;
-o-transition: all 100ms ease-out;
transition: all 100ms ease-out;
}
div.rotate135{
-ms-transform: rotate(135deg);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
-webkit-transition: all 100ms ease-out;
-moz-transition: all 100ms ease-out;
-ms-transition: all 100ms ease-out;
-o-transition: all 100ms ease-out;
transition: all 100ms ease-out;
}

div.navbar{height:73px;background:#385e97;}

div.circle{
border-radius: 50%;
width: 0px;
height: 0px;
position:absolute;
top: 35px;
left: 36px;
background:#fff;
opacity:1;
-webkit-transition: all 300ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-moz-transition: all 300ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-ms-transition: all 300ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-o-transition: all 300ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
transition: all 300ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
}
div.circle.expand{
width:1200px;
height:1200px;
top: -560px;
left: -565px;
-webkit-transition: all 400ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-moz-transition: all 400ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-ms-transition: all 400ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-o-transition: all 400ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
transition: all 400ms cubic-bezier(0.000, 0.995, 0.990, 1.000);

}
div.menu {
height: 568px;
width: 320px;
position: absolute;
top: 0px; left: 0px;
}
div.menu ul li {
list-style: none;
position:absolute;
top:50px;;
left:0;
opacity:0;
width:320px;
text-align:center;
font-size:0px;
-webkit-transition: all 70ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-moz-transition: all 70ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-ms-transition: all 70ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-o-transition: all 70ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
transition: all 70ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
}
div.menu ul li a {
color:#4a89dc;
text-transform:uppercase;
text-decoration:none;
letter-spacing:3px;
}

div.menu li.animate{
font-size:21px;
opacity:1;
-webkit-transition: all 150ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-moz-transition: all 150ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-ms-transition: all 150ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
-o-transition: all 150ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
transition: all 150ms cubic-bezier(0.000, 0.995, 0.990, 1.000);
}
div.menu li.animate:nth-of-type(1){
top:120px;
transition-delay: 0.0s;
}
div.menu li.animate:nth-of-type(2){
top:190px;
transition-delay: 0.03s;

}
div.menu li.animate:nth-of-type(3){
top:260px;
transition-delay: 0.06s;

}
div.menu li.animate:nth-of-type(4){
top:330px;
transition-delay: 0.09s;

}
div.menu li.animate:nth-of-type(5){
top:400px;
transition-delay: 0.12s;

}
div.menu li.animate:nth-of-type(6){
top:470px;
transition-delay: 0.15s;

}
</style>

<!--[if IE]>
<script src="http://libs.useso.com/js/html5shiv/3.7/html5shiv.min.js"></script>
<![endif]-->
</head>
<body>
<div class="htmleaf-container">
<div class="htmleaf-content">
<div class="screen">
<div class="navbar"></div>
<div class="circle"></div>
<div class="menu">
<ul>
<li><a href="">About</a></li>
<li><a href="">Share</a></li>
<li><a href="">Activity</a></li>
<li><a href="">Settings</a></li>
<li><a href="">Contact</a></li>
</ul>
</div>
<div class="burger">
<div class="x"></div>
<div class="y"></div>
<div class="z"></div>
</div>
</div>
</div>
</div>

<script src="http://libs.useso.com/js/jquery/1.11.0/jquery.min.js"></script>
<script>
if ('ontouchstart' in window) {
var click = 'touchstart';
} else {
var click = 'click';
}
$('div.burger').on(click, function () {
if (!$(this).hasClass('open')) {
openMenu();
} else {
closeMenu();
}
});
$('div.menu ul li a').on(click, function (e) {
e.preventDefault();
closeMenu();
});
function openMenu() {
$('div.circle').addClass('expand');
$('div.burger').addClass('open');
$('div.x, div.y, div.z').addClass('collapse');
$('.menu li').addClass('animate');
setTimeout(function () {
$('div.y').hide();
$('div.x').addClass('rotate30');
$('div.z').addClass('rotate150');
}, 70);
setTimeout(function () {
$('div.x').addClass('rotate45');
$('div.z').addClass('rotate135');
}, 120);
}
function closeMenu() {
$('div.burger').removeClass('open');
$('div.x').removeClass('rotate45').addClass('rotate30');
$('div.z').removeClass('rotate135').addClass('rotate150');
$('div.circle').removeClass('expand');
$('.menu li').removeClass('animate');
setTimeout(function () {
$('div.x').removeClass('rotate30');
$('div.z').removeClass('rotate150');
}, 50);
setTimeout(function () {
$('div.y').show();
$('div.x, div.y, div.z').removeClass('collapse');
}, 70);
}
</script>
</body>
</html>


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: