左侧菜单栏折叠展开效果-超级简单

html-css022

左侧菜单栏折叠展开效果-超级简单,第1张

分享一个常见于管理后台的左侧菜单栏折叠展开的效果,基于jquery,效果图如下:

一:页面结构:

二:页面样式css,放在head标签里

三:引入jquery文件

四:给一级菜单绑定点击事件,点击时展开下面的子菜单

五:给二级菜单绑定事件,点击时加入选中的深色背景

六:阻止二级菜单点击发生冒泡,当点击二级菜单的时候,一级菜单的事件也会发生,此时二级菜单会被收起,因此需要阻止事件冒泡

原文作者技术博客: https://www.jianshu.com/u/ac4daaeecdfe

95后前端妹子一枚,爱阅读,爱交友,将工作中遇到的问题记录在这里,希望给每一个看到的你能带来一点帮助。

欢迎留言交流

  <div class="menu">

    <ul>

      <li><a class="hide" href="index.html">首页</a></li>

      <li><a class="hide" href="page.html">关于我们</a>

        <ul>

          <li><a href="page.html">关于合作建房</a></li>

          <li><a href="page.html">企业文化</a></li>

          <li><a href="page.html">企业荣誉</a></li>

          <li><a href="page.html">核心理念</a></li>

        </ul>

      </li>

      <li><a class="hide" href="#">合作成功密码</a>

        <ul>

          <li><a href="page.html">合作模式</a></li>

          <li><a href="page.html">加入流程</a></li>

          <li><a href="#">团购幸福家</a></li>

          <!--链接页面待定,先链接到page03.html-->

        </ul>

      </li>

      <li><a class="hide" href="#">案例参考</a>

        <ul>

          <li><a href="page.html">成功案例</a></li>

          <li><a href="page.html">失败案例</a></li>

          <li><a href="page.html">国外案例</a></li>

        </ul>

      </li>

      <li><a class="hide" href="#">区域项目简介</a>

        <ul>

          <li><a href="page02.html">华南(国际)口腔医疗器械城</a></li>

          <li><a href="page02.html">华南(国际)医疗器材产业中心</a></li>

          <li><a href="page02.html">清远红场大型购物商场</a></li>

          <li><a href="page02.html">佛山鸿业幼儿园</a></li>

          <li><a href="page02.html">佛山西樵金果广场</a></li>

          <li><a href="page02.html">佛山石湾行政服务中心</a></li>

        </ul>

      </li>

      <li><a class="hide" href="reg.html">我要报名</a> </li>

      <li><a class="hide" href="news-list.html">法律保障</a> </li>

      <li><a class="hide" href="page.html">联系我们</a> </li>

    </ul>

    <div class="clear"> </div>

  </div> .menu {

font-family: arial, sans-serif

width: 1000px

height: 38px

margin-top: 5px

position:relative

z-index:10

}

.menu ul {

padding: 0

margin: 0

list-style-type: none

position:relative

z-index:10

}

.menu ul li {

width: 125px

height: 38px

float: left

position: relative

background: url(../images/index_09.jpg) no-repeat left

position:relative

z-index:10

}

.menu ul li a {

display: block

text-align: center

text-decoration: none

display: block

height: 38px

color: #bfd9eb

line-height: 33px

font-size: 14px

font-weight: bold

position:relative

z-index:10

}

.menu ul li a:visited {

display: block

text-align: center

text-decoration: none

width: 125px

display: block

height: 38px

line-height: 38px

font-size: 14px

font-weight: bold

position:relative

z-index:10

}

.menu ul li ul {

display: none

position:relative

z-index:10

}

.menu ul li:hover a {

color: #000

background: #fff

border: none

position:relative

z-index:10

}

.menu ul li:hover ul {

display: block

position: absolute

top: 35px

left: 0

border-top: none

}

.menu ul li:hover ul li a {

display: block

background: #fff

color: #000

font-size: 12px

font-weight: normal

text-align: left

padding-left: 10px

border: none

}

.menu ul li:hover ul li a:hover {

background: #008fc3

color: #f00

}

我觉得是你css代码没有margin:0padding:0吧 你在css最前面加一句试试

*{margin:0pxpadding:0px}

浏览器默认是有margin和padding值的,可能是影响了。