瀏覽代碼

commit 样式调整(非完全)

林海 1 天之前
父節點
當前提交
6855dee8ca

二進制
static/fonts/home/AdobeKaitiStd-Regular.otf


二進制
static/fonts/home/HuakangWeibei.ttf


二進制
static/fonts/home/SourceHanSansSC-Regular.otf


二進制
static/fonts/home/SourceHanSerifCN-Regular.otf


二進制
static/images/home/bg.png


二進制
static/images/home/btn-members-gold.png


二進制
static/images/home/btn-members-silver.png


二進制
static/images/home/btn-scan-gold.png


二進制
static/images/home/btn-scan-silver.png


二進制
static/images/home/committee-bg.png


二進制
static/images/home/committee-dot.png


二進制
static/images/home/logo.png


二進制
static/images/home/nav-frame.png


二進制
static/images/home/nav-seal.png


+ 352 - 261
templates/home.html

@@ -3,294 +3,385 @@
 <head>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>留氏(衢州)族谱信息管理系统2026</title>
-    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
-    <link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css" rel="stylesheet">
+    <title>留氏(衢州)族谱信息管理系统</title>
+    <link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
     <style>
+        @font-face {
+            font-family: "HuakangWeibei";
+            src: url("{{ url_for('static', filename='fonts/home/HuakangWeibei.ttf') }}") format("truetype");
+            font-weight: normal;
+            font-style: normal;
+        }
+        @font-face {
+            font-family: "AdobeKaiti";
+            src: url("{{ url_for('static', filename='fonts/home/AdobeKaitiStd-Regular.otf') }}") format("opentype");
+            font-weight: normal;
+            font-style: normal;
+        }
+        @font-face {
+            font-family: "SourceHanSans";
+            src: url("{{ url_for('static', filename='fonts/home/SourceHanSansSC-Regular.otf') }}") format("opentype");
+            font-weight: normal;
+            font-style: normal;
+        }
+        @font-face {
+            font-family: "SourceHanSerif";
+            src: url("{{ url_for('static', filename='fonts/home/SourceHanSerifCN-Regular.otf') }}") format("opentype");
+            font-weight: normal;
+            font-style: normal;
+        }
+
+        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
+
         body {
-            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
             min-height: 100vh;
-            font-family: 'Noto Serif SC', 'STSong', serif;
+            overflow-x: hidden;
+            background: #f5f2ed;
         }
-        
-        .hero-section {
-            padding: 80px 0;
-            position: relative;
+
+        .page-bg {
+            position: fixed;
+            inset: 0;
+            z-index: 0;
+            background: url("{{ url_for('static', filename='images/home/bg.png') }}") center center / cover no-repeat;
         }
-        
-        .title-container {
+
+        .page-wrap {
             position: relative;
             z-index: 1;
+            min-height: 100vh;
+            display: flex;
+            flex-direction: column;
+            align-items: center;
+            padding: 52px 20px 32px;
+        }
+
+        .page-inner {
+            width: 100%;
+            max-width: 1058px;
+            display: flex;
+            flex-direction: column;
+            align-items: center;
         }
-        
+
+        /* Logo */
+        .logo {
+            width: 155px;
+            height: auto;
+            margin-bottom: 18px;
+        }
+
+        /* 主标题 - 华康魏碑 */
         .main-title {
-            font-size: 2.5rem;
-            font-weight: 700;
-            color: #ffd700;
-            text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
-            margin-bottom: 0.5rem;
-        }
-        
-        .subtitle {
-            font-size: 1.1rem;
-            color: rgba(255,255,255,0.8);
+            font-family: "HuakangWeibei", "STSong", serif;
+            font-size: 32px;
+            font-weight: normal;
+            color: #1a1008;
+            letter-spacing: 0.08em;
+            text-align: center;
+            line-height: 1.4;
+            margin-bottom: 10px;
+        }
+
+        /* 副标题 - 思源宋体 */
+        .edition {
+            font-family: "SourceHanSerif", "STSong", serif;
+            font-size: 16px;
+            color: #6b5840;
+            letter-spacing: 0.3em;
+            padding-left: 0.3em;
+            margin-bottom: 30px;
+        }
+
+        /* 主按钮 */
+        .action-btns {
+            display: flex;
+            gap: 16px;
+            margin-bottom: 42px;
+        }
+
+        .action-btn {
+            position: relative;
+            display: block;
+            width: 295px;
+            height: 62px;
+            text-decoration: none;
+            flex-shrink: 0;
+        }
+
+        .action-btn img {
+            width: 100%;
+            height: 100%;
+            display: block;
+        }
+
+        .action-btn-text {
+            position: absolute;
+            left: 72px;
+            top: 50%;
+            transform: translateY(-50%);
+            font-family: "HuakangWeibei", "STSong", serif;
+            font-size: 18px;
+            color: #3a2810;
             letter-spacing: 0.1em;
+            pointer-events: none;
+            white-space: nowrap;
+        }
+
+        .action-btn--scan .action-btn-text {
+            color: #3a3a3a;
+        }
+
+        .action-btn .btn-img-hover { display: none; }
+        .action-btn .btn-img-default { display: block; }
+
+        .action-btn--members:hover .btn-img-default { display: block; }
+        .action-btn--members:hover .btn-img-hover { display: none; }
+
+        .action-btn--scan:hover .btn-img-default { display: none; }
+        .action-btn--scan:hover .btn-img-hover { display: block; }
+
+        /* 快速导航 */
+        .nav-section {
+            width: 100%;
+            text-align: center;
+            margin-bottom: 34px;
+        }
+
+        .nav-frame {
+            display: inline-flex;
+            align-items: center;
+            justify-content: center;
+            width: 232px;
+            height: 48px;
+            background: url("{{ url_for('static', filename='images/home/nav-frame.png') }}") center / 100% 100% no-repeat;
+            margin-bottom: 16px;
+        }
+
+        .nav-frame-title {
+            font-family: "HuakangWeibei", "STSong", serif;
+            font-size: 15px;
+            color: #4a3820;
+            letter-spacing: 0.45em;
+            padding-left: 0.45em;
         }
-        
-        .card-custom {
-            background: rgba(255,255,255,0.05);
-            backdrop-filter: blur(10px);
-            border: 1px solid rgba(255,255,255,0.1);
-            border-radius: 16px;
-            transition: transform 0.3s, box-shadow 0.3s;
-        }
-        
-        .card-custom:hover {
-            transform: translateY(-5px);
-            box-shadow: 0 20px 40px rgba(0,0,0,0.3);
-        }
-        
-        .logo-circle {
-            width: 120px;
-            height: 120px;
-            border-radius: 50%;
-            background: linear-gradient(135deg, rgba(255,215,0,0.2), rgba(255,215,0,0.1));
-            border: 3px solid #ffd700;
+
+        .quick-nav {
             display: flex;
+            flex-wrap: wrap;
             align-items: center;
             justify-content: center;
-            margin: 0 auto;
-            box-shadow: 0 0 30px rgba(255,215,0,0.3);
-        }
-        
-        .logo-text {
-            font-size: 5rem;
-            font-weight: 700;
-            color: #ffd700;
-            font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif;
-            text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
-        }
-        
-        .section-title {
-            font-size: 1.25rem;
-            color: #ffd700;
-            margin-bottom: 1.5rem;
+            gap: 2px;
+            font-family: "AdobeKaiti", "KaiTi", serif;
+            font-size: 15px;
+            color: #2a1a08;
+            line-height: 2.2;
+        }
+
+        .quick-nav a {
+            color: #2a1a08;
+            text-decoration: none;
+            padding: 0 3px;
+            transition: color 0.15s;
+        }
+
+        .quick-nav a:hover { color: #8b6020; }
+
+        .quick-nav .sep {
+            color: rgba(80, 60, 40, 0.35);
+            margin: 0 2px;
+            user-select: none;
+        }
+
+        .nav-seal {
+            width: 90px;
+            height: auto;
+            margin: 0 4px;
+            vertical-align: middle;
+        }
+
+        /* 编委会面板 */
+        .committee-panel {
+            width: 100%;
+            height: 242px;
+            background: url("{{ url_for('static', filename='images/home/committee-bg.png') }}") center / 100% 100% no-repeat;
             position: relative;
-            padding-bottom: 10px;
+            padding: 26px 32px 26px 62px;
+            margin-bottom: 36px;
         }
-        
-        .section-title::after {
-            content: '';
+
+        .committee-side-label {
             position: absolute;
-            bottom: 0;
-            left: 0;
-            width: 60px;
-            height: 2px;
-            background: linear-gradient(90deg, #ffd700, transparent);
-        }
-        
-        .member-name {
-            font-size: 1.1rem;
-            color: #fff;
-            font-weight: 500;
-        }
-        
-        .member-role {
-            font-size: 0.9rem;
-            color: rgba(255,255,255,0.6);
-        }
-        
-        .nav-btn {
-            background: linear-gradient(135deg, #ffd700, #ffb700);
-            border: none;
-            color: #1a1a2e;
-            font-weight: 600;
-            padding: 12px 30px;
-            border-radius: 50px;
-            transition: all 0.3s;
-        }
-        
-        .nav-btn:hover {
-            transform: scale(1.05);
-            box-shadow: 0 10px 30px rgba(255,215,0,0.4);
-        }
-        
-        .nav-btn-secondary {
-            background: transparent;
-            border: 1px solid rgba(255,255,255,0.3);
-            color: #fff;
-            font-weight: 500;
-            padding: 12px 30px;
-            border-radius: 50px;
-            transition: all 0.3s;
-        }
-        
-        .nav-btn-secondary:hover {
-            background: rgba(255,255,255,0.1);
-            border-color: rgba(255,255,255,0.5);
-        }
-        
-        .stat-card {
-            background: linear-gradient(135deg, rgba(255,215,0,0.1), rgba(255,183,0,0.05));
-            border: 1px solid rgba(255,215,0,0.2);
-        }
-        
-        .stat-number {
-            font-size: 2.5rem;
-            font-weight: 700;
-            color: #ffd700;
-        }
-        
-        .stat-label {
-            color: rgba(255,255,255,0.7);
-            font-size: 0.9rem;
-        }
-        
-        .footer {
-            padding: 30px 0;
-            border-top: 1px solid rgba(255,255,255,0.1);
-        }
-        
-        .footer-text {
-            color: rgba(255,255,255,0.5);
-            font-size: 0.9rem;
-        }
-        
-        .logo-img {
-            width: 120px;
-            height: 120px;
-            border-radius: 50%;
-            border: 3px solid rgba(255,215,0,0.5);
-            box-shadow: 0 10px 30px rgba(255,215,0,0.3);
+            left: 18px;
+            top: 50%;
+            transform: translateY(-50%);
+            writing-mode: vertical-rl;
+            text-orientation: mixed;
+            font-family: "HuakangWeibei", "STSong", serif;
+            font-size: 14px;
+            color: #4a3820;
+            letter-spacing: 0.35em;
+            padding-top: 0.35em;
+        }
+
+        .cm-row {
+            display: flex;
+            align-items: baseline;
+            gap: 10px;
+            padding: 9px 0;
+            border-bottom: 1px dashed rgba(160, 140, 100, 0.3);
+            min-height: 36px;
+        }
+
+        .cm-row:last-child { border-bottom: none; }
+
+        .cm-dot {
+            width: 11px;
+            height: 11px;
+            flex-shrink: 0;
+            margin-top: 4px;
+            background: url("{{ url_for('static', filename='images/home/committee-dot.png') }}") center / contain no-repeat;
+        }
+
+        .cm-label {
+            font-family: "HuakangWeibei", "STSong", serif;
+            font-size: 15px;
+            color: #4a3820;
+            white-space: nowrap;
+        }
+
+        .cm-value {
+            font-family: "AdobeKaiti", "KaiTi", serif;
+            font-size: 15px;
+            color: #1a1008;
+            flex: 1;
+        }
+
+        .cm-names {
+            word-spacing: 0.55em;
+        }
+
+        /* 页脚 - 思源黑体 */
+        .page-footer {
+            font-family: "SourceHanSans", "PingFang SC", sans-serif;
+            font-size: 13px;
+            color: #7a6a58;
+            text-align: center;
+            letter-spacing: 0.03em;
+            padding: 8px 0;
+        }
+
+        .page-footer .sep {
+            margin: 0 10px;
+            color: rgba(120, 100, 80, 0.4);
+        }
+
+        @media (max-width: 680px) {
+            .page-wrap { padding: 32px 16px 24px; }
+            .main-title { font-size: 22px; letter-spacing: 0.04em; }
+            .edition { font-size: 14px; margin-bottom: 24px; }
+            .action-btns { flex-direction: column; align-items: center; gap: 12px; margin-bottom: 32px; }
+            .action-btn { width: 260px; height: 55px; }
+            .action-btn-text { font-size: 16px; left: 64px; }
+            .committee-panel {
+                height: auto;
+                min-height: 220px;
+                padding: 20px 20px 20px 56px;
+                background-size: cover;
+            }
+            .committee-side-label { left: 14px; font-size: 12px; }
+            .cm-row { flex-wrap: wrap; padding: 8px 0; }
+            .quick-nav { font-size: 13px; }
+            .nav-seal { width: 72px; }
         }
     </style>
 </head>
 <body>
-    <!-- Hero Section -->
-    <section class="hero-section text-center">
-        <div class="container title-container">
-            <div class="mb-6">
-                <div class="logo-circle">
-                    <span class="logo-text">留</span>
-                </div>
+
+<div class="page-bg"></div>
+
+<div class="page-wrap">
+    <div class="page-inner">
+
+        <img src="{{ url_for('static', filename='images/home/logo.png') }}" alt="留" class="logo">
+
+        <h1 class="main-title">留氏(衢州)族谱信息管理系统</h1>
+        <p class="edition">二〇二五年度版</p>
+
+        <div class="action-btns">
+            <a href="{{ url_for('members') }}" class="action-btn action-btn--members">
+                <img src="{{ url_for('static', filename='images/home/btn-members-gold.png') }}" alt="" class="btn-img-default">
+                <img src="{{ url_for('static', filename='images/home/btn-members-silver.png') }}" alt="" class="btn-img-hover">
+                <span class="action-btn-text">成员管理</span>
+            </a>
+            <a href="{{ url_for('index') }}" class="action-btn action-btn--scan">
+                <img src="{{ url_for('static', filename='images/home/btn-scan-silver.png') }}" alt="" class="btn-img-default">
+                <img src="{{ url_for('static', filename='images/home/btn-scan-gold.png') }}" alt="" class="btn-img-hover">
+                <span class="action-btn-text">扫描件管理</span>
+            </a>
+        </div>
+
+        <div class="nav-section">
+            <div class="nav-frame">
+                <span class="nav-frame-title">快速导航</span>
             </div>
-            <h1 class="main-title">留氏(衢州)族谱信息管理系统</h1>
-            <p class="subtitle">二〇二六年度版</p>
-            <div class="mt-6">
-                <a href="{{ url_for('members') }}" class="nav-btn me-3">
-                    <i class="bi bi-people me-2"></i>成员管理
-                </a>
-                <a href="{{ url_for('index') }}" class="nav-btn-secondary">
-                    <i class="bi bi-images me-2"></i>扫描件管理
-                </a>
+            <div class="quick-nav">
+                <a href="{{ url_for('members') }}">成员列表</a>
+                <span class="sep">/</span>
+                <a href="{{ url_for('add_member') }}">列入新成员</a>
+                <span class="sep">/</span>
+                <a href="{{ url_for('tree') }}">关系树状图</a>
+                <span class="sep">/</span>
+                <img src="{{ url_for('static', filename='images/home/nav-seal.png') }}" alt="系统管理" class="nav-seal">
+                <span class="sep">/</span>
+                <a href="{{ url_for('index') }}">扫描件管理</a>
+                <span class="sep">/</span>
+                {% if session.get('is_super_admin') %}
+                <a href="{{ url_for('pdf_management') }}">家谱管理</a>
+                <span class="sep">/</span>
+                {% endif %}
+                <a href="{{ url_for('suspected_errors') }}">疑似错误汇总</a>
             </div>
         </div>
-    </section>
-
-    <!-- Quick Actions -->
-    <section class="py-8">
-        <div class="container">
-            <h2 class="section-title text-center mb-8">快速导航</h2>
-            <div class="row g-4">
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('members') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-people text-3xl text-yellow-400 mb-3"></i>
-                        <div class="text-white font-medium">成员列表</div>
-                    </a>
-                </div>
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('add_member') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-user-plus text-3xl text-green-400 mb-3"></i>
-                        <div class="text-white font-medium">录入新成员</div>
-                    </a>
-                </div>
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('tree') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-tree text-3xl text-blue-400 mb-3"></i>
-                        <div class="text-white font-medium">关系树状图</div>
-                    </a>
-                </div>
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('index') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-images text-3xl text-purple-400 mb-3"></i>
-                        <div class="text-white font-medium">扫描件管理</div>
-                    </a>
-                </div>
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('pdf_management') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-file-pdf text-3xl text-red-400 mb-3"></i>
-                        <div class="text-white font-medium">家谱管理</div>
-                    </a>
-                </div>
-                <div class="col-lg-2 col-md-3 col-sm-4 mb-4">
-                    <a href="{{ url_for('suspected_errors') }}" class="card-custom p-4 text-center text-decoration-none">
-                        <i class="bi bi-alert-circle text-3xl text-orange-400 mb-3"></i>
-                        <div class="text-white font-medium">疑似错误汇总</div>
-                    </a>
-                </div>
+
+        <div class="committee-panel">
+            <div class="committee-side-label">编委会成员</div>
+            <div class="cm-row">
+                <span class="cm-dot"></span>
+                <span class="cm-label">主编:</span>
+                <span class="cm-value">留文正</span>
             </div>
-        </div>
-    </section>
-
-    <!-- Editorial Board Section -->
-    <section class="py-12">
-        <div class="container">
-            <div class="card-custom p-6">
-                <h2 class="section-title">编委会成员</h2>
-                
-                <!-- Chief Editor -->
-                <div style="display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,0.1);">
-                    <i class="bi bi-star" style="color: #ffd700; font-size: 18px; width: 24px;"></i>
-                    <span style="color: #ffd700; font-weight: 600; font-size: 16px; width: 100px;">主编:</span>
-                    <span style="color: #ffffff; font-weight: 700; font-size: 16px;">留文正</span>
-                </div>
-                
-                <!-- Editorial Committee -->
-                <div style="display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,0.1); overflow-x: auto;">
-                    <i class="bi bi-users" style="color: #4285F4; font-size: 18px; width: 24px; flex-shrink: 0;"></i>
-                    <span style="color: #4285F4; font-weight: 600; font-size: 16px; width: 100px; flex-shrink: 0;">编委成员:</span>
-                    <div style="display: flex; flex-wrap: nowrap; gap: 6px;">
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留忠德</span>
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留文正</span>
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留越</span>
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留良吾</span>
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留如藩</span>
-                        <span style="padding: 3px 10px; background: rgba(255,215,0,0.2); border-radius: 16px; color: #ffd700; font-weight: 500; font-size: 13px; white-space: nowrap;">留强</span>
-                        <span style="padding: 3px 10px; background: rgba(255,255,255,0.1); border-radius: 16px; color: rgba(255,255,255,0.6); font-size: 13px; white-space: nowrap;">……</span>
-                    </div>
-                </div>
-                
-                <!-- External Advisor -->
-                <div style="display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,0.1);">
-                    <i class="bi bi-chat-left" style="color: #34A853; font-size: 18px; width: 24px;"></i>
-                    <span style="color: #34A853; font-weight: 600; font-size: 16px; width: 100px;">外支顾问:</span>
-                    <span style="color: #ffffff; font-weight: 500; font-size: 16px;">留朝信</span>
-                </div>
-                
-                <!-- System Planner -->
-                <div style="display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,0.1);">
-                    <i class="bi bi-grid-3x3" style="color: #9C27B0; font-size: 18px; width: 24px;"></i>
-                    <span style="color: #9C27B0; font-weight: 600; font-size: 16px; width: 100px;">系统规划:</span>
-                    <span style="color: #ffffff; font-weight: 500; font-size: 16px;">留越</span>
-                </div>
-                
-                <!-- Technical Implementation -->
-                <div style="display: flex; align-items: center; gap: 12px; padding: 12px 0;">
-                    <i class="bi bi-code" style="color: #FB8C00; font-size: 18px; width: 24px;"></i>
-                    <span style="color: #FB8C00; font-weight: 600; font-size: 16px; width: 100px;">技术实现:</span>
-                    <span style="color: #ffffff; font-weight: 500; font-size: 16px;">春笋秋竹(杭州)科技有限公司</span>
-                </div>
+            <div class="cm-row">
+                <span class="cm-dot"></span>
+                <span class="cm-label">编委成员:</span>
+                <span class="cm-value cm-names">留忠德 留文正 留越 留良吾 留如藩 留强 ……</span>
+            </div>
+            <div class="cm-row">
+                <span class="cm-dot"></span>
+                <span class="cm-label">外支顾问:</span>
+                <span class="cm-value">留朝信</span>
+            </div>
+            <div class="cm-row">
+                <span class="cm-dot"></span>
+                <span class="cm-label">技术支持:</span>
+                <span class="cm-value">留越</span>
+            </div>
+            <div class="cm-row">
+                <span class="cm-dot"></span>
+                <span class="cm-label">技术实现:</span>
+                <span class="cm-value">春笋秋竹(杭州)科技有限公司</span>
             </div>
         </div>
-    </section>
 
-    <!-- Footer -->
-    <footer class="footer text-center">
-        <div class="container">
-            <p class="footer-text">© 2026 留氏(衢州)族谱信息管理系统 | 传承家族文化,弘扬民族精神</p>
-        </div>
-    </footer>
+        <footer class="page-footer">
+            © 2025 留氏(衢州)族谱信息管理系统
+            <span class="sep">|</span>
+            传承家族文化,弘扬民族精神
+        </footer>
+
+    </div>
+</div>
 
-    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
+<script src="{{ url_for('static', filename='js/bootstrap.bundle.min.js') }}"></script>
 </body>
-</html>
+</html>