树状展开(Tree Expand)通常指的是一种数据结构或界面展示方式,其中数据以树状结构呈现,允许用户展开或折叠不同的层级。在CSS中,可以通过特定的样式和布局技巧来实现这种树状结构的视觉效果。
<ul class="tree">
<li>
<span class="tree-toggle">Node 1</span>
<ul>
<li>Node 1.1</li>
<li>Node 1.2</li>
</ul>
</li>
<li>
<span class="tree-toggle">Node 2</span>
<ul>
<li>Node 2.1</li>
<li>Node 2.2</li>
</ul>
</li>
</ul>.tree {
list-style: none;
padding: 0;
}
.tree li {
margin: 0;
padding: 5px 0;
}
.tree-toggle {
cursor: pointer;
}
.tree ul {
display: none;
list-style: none;
padding-left: 20px;
}
.tree li.open > ul {
display: block;
}document.addEventListener('DOMContentLoaded', function() {
const toggles = document.querySelectorAll('.tree-toggle');
toggles.forEach(toggle => {
toggle.addEventListener('click', function() {
const li = this.parentElement;
li.classList.toggle('open');
});
});
});.tree ul的display属性设置为none,并且.tree li.open > ul的display属性设置为block。.open类。padding-left或margin-left设置,确保子节点有足够的空间正确对齐。DOMContentLoaded事件。.tree-toggle元素。通过以上方法,你可以实现一个基本的树状展开效果,并根据需要进行扩展和优化。