![图片[1]-移动端左侧导航栏做法-墨初小屋](http://mochu.co/wp-content/uploads/2022/02/javascript.jpg)
移动端左侧导航栏效果如何做
大概思路就是设导航栏盒子为固定定位 fixed,初始宽度设为0,点击打开按钮调用函数设置宽度为有效值
具体步骤下面代码有解释
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no">
<title>移动端左侧导航栏</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
.nav {
width: 100%;
height: 50px;
padding: 0 20px;
background-color: #000;
line-height: 50px;
}
.side-nav {
position: fixed;
overflow-x: hidden; /*水平方向溢出隐藏*/
z-index: 9; /*堆叠顺序,让导航栏在最前面显示*/
top: 0;
left: 0; /*改成 right=0 即右侧打开*/
height: 100%;
width: 0; /*初始隐藏,即宽度为0*/
padding-top: 60px;
background-color: #000;
transition: 0.5s; /*动画过渡时间,这里只是最简单的用法*/
}
.container {
position: absolute;
width: 100%;
height: 100%;
background-color: #fff;
}
</style>
</head>
<body>
<div class="nav">
<button onclick="openNav()">打开</button>
</div>
<div class="side-nav" id="side-nav"></div>
<div class="container" onclick="closeNav()"></div>
<script>
// 设置侧栏宽度并让外面大盒子关闭的事件使用捕获传递
function openNav() {
document.getElementById("side-nav").style.width = "50%";
}
// 使侧栏宽度为0,即关闭
function closeNav() {
document.getElementById("side-nav").style.width = "0";
}
</script>
</body>
</html>
下面是演示
© 版权声明
文章版权归作者所有,转载请注明来源。
THE END
喜欢就支持一下吧