<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>漂亮HTML5树形结构</title>
<style>
ul {
list-style-type: none;
padding-left: 20px;
}
li {
margin: 5px 0;
}
.tree-node {
display: flex;
align-items: center;
}
.tree-node::before {
content: "";
border-left: 1px solid #ccc;
height: 1em;
position: absolute;
left: 10px;
top: 0;
}
.tree-node::after {
content: "";
border-top: 1px solid #ccc;
width: 10px;
position: absolute;
left: -10px;
top: 0.5em;
}
.tree-node > ul > li::before {
height: calc(100% + 1em);
}
.tree-node > ul > li:last-child::before {
height: 0.5em;
}
.tree-node > ul > li:last-child::after {
border-top: none;
}
.tree-node > ul {
padding-left: 20px;
}
</style>
</head>
<body>
<ul id="tree">
<li class="tree-node">
根节点
<ul>
<li class="tree-node">
子节点1
<ul>
<li class="tree-node">子子节点1</li>
<li class="tree-node">子子节点2</li>
</ul>
</li>
<li class="tree-node">
子节点2
<ul>
<li class="tree-node">子子节点3</li>
<li class="tree-node">子子节点4</li>
</ul>
</li>
</ul>
</li>
</ul>
</body>
</html>
HTML 结构:
<ul>
和 <li>
标签来构建树形结构。<li>
元素表示,内部可以嵌套另一个 <ul>
来表示子节点。CSS 样式:
ul
和 li
的样式去除了默认的列表符号,并增加了内边距和外边距。.tree-node
类用于每个树节点,使用伪元素 ::before
和 ::after
来绘制连接线。::before
伪元素绘制垂直线,::after
伪元素绘制水平线。height
和 border-top
属性,确保线条正确连接到每个节点。这个示例代码展示了如何使用 HTML 和 CSS 创建一个美观的树形结构。
上一篇:html 转义符
下一篇:html页面随窗口大小改变
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站