本文主要和大家介绍了纯css实现多级折叠菜单折叠树效果,运用checkbox的checked值来判断下级栏目是否展开,通过css3选择器提供的checked伪类来实现此效果,感兴趣的朋友参考下吧,希望能帮助到大家。
1、运用checkbox的checked值来判断下级栏目是否展开,CSS3的选择器中提供了:checked 这个伪类,这个伪类提供我们,当元素拥有checked这个值的时候就执行你的CSS。
当有子菜单时,菜单项右侧有向下的箭头,当收起菜单项时,箭头朝上。图片可以自己替换。
2、效果图

3、代码片段
立即学习“前端免费学习笔记(深入)”;
下面介绍下CSS 菜单折叠
先给大家展示效果图:

如上,假设一级菜单是 p,二级菜单是 ul。形如:
业务管理
-
...
汇总分析
-
...
>系统管理
-
...
当菜单展开时,左边有一个蓝色的标记,右边是折叠标记。
左边蓝色标记自不用表,CSS 设置 border 即可,右边利用 CSS 也超方便。
p span { float:right; padding-right:20px; }
p span:after { content: "∨" }
p.collapsed span:after { content: "∧" }然后再说子菜单的折叠效果,有动画噢:
p.collapsed + ul { height: 0px; transition: height 0.5s ease-out; }
p ul { height: 80px; transition: height 0.5s ease-in; }注意 ul 一定要有 height 的具体值,如果没有具体指明多少 px,则虽然能折叠,但是没有动画效果。
最后就是利用 jQuery 或 ezj 切换 className 了,当点击 p 的时候 toggleClass("collapsed")。










