综述: 新增平台web页面

- 添加了一个包含侧边栏菜单和内容展示区域的HTML页面
- 页面具有响应式设计,支持在不同设备上良好显示
- 实现了多级菜单的展开收起功能
- 添加了内容区域的动态更新功能,可根据菜单选择显示相应内容
This commit is contained in:
linbin 2025-09-05 11:18:52 +08:00
parent 8e4cd9f324
commit 7ac41611a0
1 changed files with 379 additions and 0 deletions

379
平台web/index.html Normal file
View File

@ -0,0 +1,379 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>内容展示容器</title>
<style>
/* CSS样式将在这里添加 */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: #f5f7fa;
color: #333;
height: 100vh;
display: flex;
}
/* 左侧菜单样式 */
.sidebar {
width: 250px;
background: linear-gradient(180deg, #2c3e50, #1a2530);
color: #ecf0f1;
height: 100%;
overflow-y: auto;
transition: all 0.3s ease;
box-shadow: 3px 0 10px rgba(0, 0, 0, 0.1);
}
.sidebar-header {
padding: 20px;
background-color: rgba(0, 0, 0, 0.2);
text-align: center;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.sidebar-header h2 {
font-size: 1.5rem;
font-weight: 600;
}
/* 菜单样式 */
.menu {
list-style: none;
padding: 10px 0;
}
.menu-item {
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.menu-item > a {
display: flex;
align-items: center;
padding: 12px 20px;
color: #bdc3c7;
text-decoration: none;
transition: all 0.3s ease;
cursor: pointer;
}
.menu-item > a:hover {
background-color: rgba(255, 255, 255, 0.1);
color: #ecf0f1;
}
.menu-item > a i {
margin-right: 10px;
width: 20px;
text-align: center;
}
/* 子菜单样式 */
.submenu {
list-style: none;
padding-left: 0;
max-height: 0;
overflow: hidden;
transition: max-height 0.3s ease;
background-color: rgba(0, 0, 0, 0.2);
}
.submenu.open {
max-height: 500px;
}
.submenu-item a {
display: block;
padding: 10px 20px 10px 50px;
color: #95a5a6;
text-decoration: none;
transition: all 0.3s ease;
border-left: 3px solid transparent;
}
.submenu-item a:hover {
background-color: rgba(255, 255, 255, 0.05);
color: #ecf0f1;
border-left-color: #3498db;
}
/* 内容区域样式 */
.content {
flex: 1;
padding: 20px;
overflow-y: auto;
background-color: #fff;
}
.content-header {
margin-bottom: 20px;
padding-bottom: 15px;
border-bottom: 1px solid #eee;
}
.content-header h1 {
color: #2c3e50;
font-size: 2rem;
}
.content-body {
line-height: 1.6;
}
.content-section {
margin-bottom: 30px;
padding: 20px;
background-color: #f8f9fa;
border-radius: 5px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}
.content-section h2 {
color: #3498db;
margin-bottom: 15px;
}
.content-section p {
margin-bottom: 15px;
color: #555;
}
/* 响应式设计 */
@media (max-width: 768px) {
.sidebar {
width: 70px;
}
.sidebar-header h2,
.menu-item span,
.submenu-item span {
display: none;
}
.menu-item a,
.submenu-item a {
justify-content: center;
padding: 15px 10px;
}
.menu-item a i,
.submenu-item a i {
margin-right: 0;
font-size: 1.2rem;
}
}
</style>
</head>
<body>
<!-- 左侧菜单 -->
<div class="sidebar">
<div class="sidebar-header">
<h2>内容管理系统</h2>
</div>
<ul class="menu">
<li class="menu-item">
<a>
<i>🏠</i>
<span>首页</span>
</a>
</li>
<li class="menu-item">
<a>
<i>📊</i>
<span>数据分析</span>
</a>
<ul class="submenu">
<li class="submenu-item">
<a>
<i>📈</i>
<span>销售报表</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>👥</i>
<span>用户统计</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>🛒</i>
<span>产品分析</span>
</a>
</li>
</ul>
</li>
<li class="menu-item">
<a>
<i>📦</i>
<span>产品管理</span>
</a>
<ul class="submenu">
<li class="submenu-item">
<a>
<i></i>
<span>新增产品</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>✏️</i>
<span>编辑产品</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>🗑️</i>
<span>删除产品</span>
</a>
</li>
</ul>
</li>
<li class="menu-item">
<a>
<i>👥</i>
<span>用户管理</span>
</a>
<ul class="submenu">
<li class="submenu-item">
<a>
<i>📋</i>
<span>用户列表</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>🔒</i>
<span>权限设置</span>
</a>
</li>
</ul>
</li>
<li class="menu-item">
<a>
<i>⚙️</i>
<span>系统设置</span>
</a>
<ul class="submenu">
<li class="submenu-item">
<a>
<i>🌐</i>
<span>常规设置</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>🎨</i>
<span>外观设置</span>
</a>
</li>
<li class="submenu-item">
<a>
<i>🔌</i>
<span>插件管理</span>
</a>
</li>
</ul>
</li>
</ul>
</div>
<!-- 内容区域 -->
<div class="content">
<div class="content-header">
<h1>欢迎使用内容管理系统</h1>
</div>
<div class="content-body">
<div class="content-section">
<h2>系统介绍</h2>
<p>这是一个简洁美观的内容管理系统,左侧是多级导航菜单,右侧是内容展示区域。您可以点击左侧菜单浏览不同的内容板块。</p>
<p>系统支持响应式设计,在不同设备上都能提供良好的用户体验。</p>
</div>
<div class="content-section">
<h2>功能特点</h2>
<p>1. 多级菜单结构:支持无限层级的菜单分类</p>
<p>2. 展开收起功能:点击箭头可展开或收起子菜单</p>
<p>3. 响应式设计:适配不同屏幕尺寸的设备</p>
<p>4. 美观界面:现代化的设计风格,提供良好的视觉体验</p>
</div>
<div class="content-section">
<h2>使用说明</h2>
<p>点击左侧菜单项可以展开或收起子菜单。</p>
<p>在移动设备上,菜单会自动折叠以节省空间。</p>
<p>内容区域会根据选择的菜单项显示相应的内容。</p>
</div>
</div>
</div>
<script>
// JavaScript功能将在这里添加
document.addEventListener('DOMContentLoaded', function() {
// 获取所有可展开的菜单项
const menuItems = document.querySelectorAll('.menu-item > a');
// 为每个可展开的菜单项添加点击事件
menuItems.forEach(item => {
item.addEventListener('click', function(e) {
e.preventDefault();
// 切换子菜单的显示状态
const submenu = this.nextElementSibling;
submenu.classList.toggle('open');
});
});
// 为所有菜单项添加点击事件(包括子菜单项)
const allMenuItems = document.querySelectorAll('.menu-item a, .submenu-item a');
allMenuItems.forEach(item => {
item.addEventListener('click', function(e) {
// 移除所有菜单项的活动状态
allMenuItems.forEach(i => i.classList.remove('active'));
// 为当前点击的菜单项添加活动状态
this.classList.add('active');
// 获取菜单项文本
const text = this.querySelector('span').textContent;
// 更新内容区域标题
document.querySelector('.content-header h1').textContent = text || '内容管理系统';
// 这里可以根据需要更新内容区域的内容
updateContent(text);
});
});
// 更新内容区域的函数
function updateContent(title) {
const contentBody = document.querySelector('.content-body');
contentBody.innerHTML = `
<div class="content-section">
<h2>${title || '欢迎使用'}</h2>
<p>您已选择"${title}"菜单项。在这里可以展示与该菜单项相关的详细内容。</p>
<p>这是一个内容展示容器,您可以根据实际需求添加任何内容,包括文本、图片、表格等。</p>
</div>
<div class="content-section">
<h2>功能说明</h2>
<p>此区域用于展示"${title}"相关的具体内容。</p>
<p>您可以添加任何HTML内容包括</p>
<ul>
<li>文本段落</li>
<li>图片展示</li>
<li>数据表格</li>
<li>表单元素</li>
<li>图表展示</li>
</ul>
</div>
`;
}
});
</script>
</body>
</html>