| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
- /**
- * BCJD 导航 - 404 页面
- */
- require_once __DIR__ . '/../init.php';
- http_response_code(404);
- ?><!doctype html>
- <html lang="zh-CN">
- <head>
- <meta charset="utf-8" />
- <meta name="viewport" content="width=device-width,initial-scale=1" />
- <meta name="color-scheme" content="light dark" />
- <title><?= htmlspecialchars(APP_NAME, ENT_QUOTES, 'UTF-8') ?> - 页面未找到</title>
- <link rel="stylesheet" href="style.css" />
- <style>
- .error-wrap {
- text-align: center;
- padding: 80px 20px;
- }
- .error-code {
- font-size: 72px;
- font-weight: 800;
- line-height: 1;
- background: linear-gradient(135deg, var(--danger), var(--primary));
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- background-clip: text;
- margin-bottom: 16px;
- }
- .error-msg {
- font-size: 18px;
- color: var(--muted);
- margin-bottom: 32px;
- }
- .error-link {
- display: inline-block;
- padding: 12px 28px;
- border-radius: 999px;
- background: var(--primary);
- color: #fff;
- text-decoration: none;
- font-size: 15px;
- transition: opacity .2s;
- }
- .error-link:hover {
- opacity: .85;
- }
- </style>
- </head>
- <body class="index-page">
- <div class="wrap">
- <header>
- <div class="brand">
- <h1><a href="index.php" style="color:inherit;text-decoration:none"><?= htmlspecialchars(APP_NAME, ENT_QUOTES, 'UTF-8') ?></a></h1>
- <div class="sub">统一入口 · 快速跳转</div>
- </div>
- </header>
- <div class="error-wrap">
- <div class="error-code">404</div>
- <div class="error-msg">你访问的页面不存在</div>
- <a href="index.php" class="error-link">← 返回首页</a>
- </div>
- <footer>
- <div class="mono">Updated (UTC+8): <span id="ts">--</span></div>
- </footer>
- </div>
- <script>
- (function(){
- 'use strict';
- const TZ = "Asia/Shanghai";
- const fmt = new Intl.DateTimeFormat("zh-CN", {
- timeZone: TZ, year: "numeric", month: "2-digit", day: "2-digit",
- hour: "2-digit", minute: "2-digit", second: "2-digit", hour12: false,
- });
- function tick(){
- document.getElementById("ts").textContent = fmt.format(new Date());
- }
- tick(); setInterval(tick, 1000);
- })();
- </script>
- </body>
- </html>
|