css树形导航菜单代码实例

快乐打工仔 分类:实例代码

分享一段代码实例,它利用css实现了树形导航菜单效果。

代码实例如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>前端教程网</title>
<style>
body {
background: #fefefe;
}
.tree {
list-style: none;
padding-left: 0;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.tree > .tree-node .tree {
display: block;
overflow-y: hidden;
max-height: 300px;
height: auto;
-webkit-transition: max-height .5s ease-in;
-moz-transition: max-height .5s ease-in;
-o-transition: max-height .5s ease-in;
transition: max-height .5s ease-in;
}
.tree-node {
margin-top: -3px;
}
.tree input.node-check {
display: none;
}
.tree > .tree-node > label {
cursor: pointer;
}
.tree .node-content {
display: inline-block;
}
.tree .node-content > .node-text {
font-size: 12px;
line-height: 14px;
margin-left: -4px;
}
.tree .node-content > .node-text:hover {
color: #00A000;
}
.node-icon {
background-repeat: no-repeat;
background-size: 100% 100%;
display: inline-block;
vertical-align: middle;
width: 16px;
height: 16px;
}
.node-check:checked + .node-content > .tree {
max-height: 0;
}
.node-check:checked + .node-content > .icon-folder {
background-image: url(demo/CSS/img/folder.gif);
}
.node-check:checked + .node-content > .icon-expand {
background-image: url(demo/CSS/img/elbow-end-plus-nl.gif);
}
.icon-expand {
background-image: url(demo/CSS/img/elbow-end-minus-nl.gif);
}
.icon-minus {
background-image: url(demo/CSS/img/elbow-minus.gif);
}
.icon-elbow {
background-image: url(demo/CSS/img/elbow.gif);
}
.icon-elbow-line {
background-image: url(demo/CSS/img/elbow-line.gif);
}
.icon-elbow-end {
background-image: url(demo/CSS/img/elbow-end.gif);
}
.icon-file {
background-image: url(demo/CSS/img/leaf.gif);
}
.icon-folder {
background-image: url(demo/CSS/img/folder-open.gif);
}
</style>
</head>
<body>
<ul class="tree">
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-expand"></i>
<i class="node-icon icon-folder"></i>
<span class="node-text">目录1</span>
<ul class="tree">
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">文件1</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">文件1</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-expand"></i>
<i class="node-icon icon-folder"></i>
<span class="node-text">目录22</span>
<ul class="tree">
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">pipipi.net</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">前端教程网</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">div教程</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow-line"></i>
<i class="node-icon icon-elbow-end"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">css教程</span>
</div>
</label>
</li>
</ul>
</div>
</label>
</li>
</ul>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">js教程</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon icon-expand"></i>
<i class="node-icon icon-folder"></i>
<span class="node-text">jquery教程</span>
<ul class="tree">
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">json教程</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">css3教程</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon"></i>
<i class="node-icon icon-elbow"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">html教程</span>
</div>
</label>
</li>
<li class="tree-node">
<label>
<input class="node-check" type="checkbox">
<div class="node-content">
<i class="node-icon"></i>
<i class="node-icon icon-elbow-end"></i>
<i class="node-icon icon-file"></i>
<span class="node-text">ajax教程</span>
</div>
</label>
</li>
</ul>
</div>
</label>
</li>
</ul>
</body>
</html>

回复

我来回复
  • 暂无回复内容