滑动侧边栏

滑动侧边栏

这次的demo主要是普通的div布局,涉及到了简单的js
一.html部分
暂时没有啥太大的问题,主要是运用svg来绘制一个简单地菜单图标

<svg width="30" height="30">
                    <path d="M0,5 30,5" stroke="#fff" stroke-width="5" />
                    <path d="M0,14 30,14" stroke="#fff" stroke-width="5" />
                    <path d="M0,23 30,23" stroke="#fff" stroke-width="5" />
                    svg>

然后这是效果
在这里插入图片描述
然后是主题html的代码

<nav class="navbar">
					    <span class="open-side">
					        <a href="#" onclick="openSideMenu()">
					            <svg width="30" height="30">
					                <path d="M0,5 30,5" stroke="#333" stroke-width="5" />
					                <path d="M0,14 30,14" stroke="#333" stroke-width="5" />
					                <path d="M0,23 30,23" stroke="#333" stroke-width="5" />
					            svg>
					        a>
					    span>
					
					    <ul class="navbar-nav">
					        <li><a href="#">Homea>li>
					        <li><a href="#">Abouta>li>
					        <li><a href="#">Servicesa>li>
					        <li><a href="#">Contacta>li>
					    ul>
					nav>
					
					<div id="side-menu" class="side-nav">
					    <a href="#" class="btn-close" onclick="closeSideMenu()">×a>
					    <a href="#">Homea>
					    <a href="#">Abouta>
					    <a href="#">Servicesa>
					    <a href="#">Contacta>
					div>
					
					<div id="main">
					    <h1>welcomeh1>
					div>
				a>
			span>
		nav>

接着就是涉及到的一点点js代码

<script>
        function openSideMenu() {
      
            document.getElementById('side-menu').style.width = '250px';
            document.getElementById('main').style.marginLeft = '250px';
        }

        function closeSideMenu() {
      
            document.getElementById('side-menu').style.width = '0';
            document.getElementById('main').style.marginLeft = '0';
        }
    script>

这里的js代码主要用于对侧边栏滑入滑出做一个设计
二.css部分

*{
     
    padding: 0;
    margin: 0;
}

body{
     
    font-family: Arial, Helvetica, sans-serif;
    background-color: #f4f4f4;
    overflow-x: hidden;
}

.navbar{
     
    background-color: #3b5998;
    overflow: hidden;
    height: 63px;
}

.navbar a{
     
    float: left;
    display: block;
    color: #f2f2f2;
    text-align: center;
    text-decoration: none;
    font-size: 17px;
    padding: 14px 16px;
}

.navbar ul{
     
    margin: 8px 0 0 0;
    list-style: none;
}

.navbar a:hover{
     
    background-color: #ddd;
    color: #000;
}

.side-nav{
     
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    background-color: #111;
    opacity: 0.9;
    overflow-x: hidden;
    padding-top: 60px;
    transition: 0.5s;
}

.side-nav a{
     
    padding: 10px 10px 10px 30px;
    text-decoration: none;
    font-size: 22px;
    color: #ccc;
    display: block;
    transition: 0.3s;
}

.side-nav a:hover{
     
    color: orange;
}

.side-nav .btn-close{
     
    position: absolute;
    top: 0;
    right: 22px;
    font-size: 36px;
}

#main{
     
    transition: margin-left 0.5s;
    padding: 20px;
}

@media(max-width: 568px) {
     
    .navbar-nav{
     
        display: none;
    }
}

没什么很难的地方大部分内容都是前面demo的内容
最后是成品图
滑动侧边栏_第1张图片
滑动侧边栏_第2张图片

你可能感兴趣的:(滑动侧边栏)