2026-10-20 TUE UTC 12:42 PM TPE 8:42 PM 每小時自動更新 中文 EN
LIVE 快訊
← 返回網站更新紀錄 Site Changelog

提交原始紀錄

Boxed centered layout: 1280px content sheet with side gutters The page chrome, home grid, and footer previously spanned the full viewport (inner containers capped at 1440px), which read as cramped on wide screens. The .page wrapper is now the single width authority: a centered 1280px sheet with hairline side borders and a soft shadow over a darker body gutter (color-mix keeps it theme-aware in dark mode). Home rails narrowed 280/320 -> 260/300 to give the center column room. Below 1100px the sheet goes edge-to-edge again. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

SHA
0f78821364783e21c35ddc00a926c6444d85bb9d
提交時間
作者
avwire
提交者
avwire

變更檔案 (4)

  • static/site.css modified · +13 / −5
  • templates/base.html modified · +2 / −2
  • templates/incidents.html modified · +1 / −1
  • templates/sources.html modified · +1 / −1

完整差異

@@ -2,7 +2,8 @@\n    plus classes replacing the design's inline styles where JS needs hooks. */\n \n /* — from the design's helmet <style> block — */\n-html, body { margin: 0; background: var(--color-bg); }\n+/* boxed layout: the page sheet is centered, the body shows a darker gutter */\n+html, body { margin: 0; background: color-mix(in srgb, var(--color-text) 12%, var(--color-bg)); }\n body, h1, h2, h3, h4, h5, h6, .btn, .card-title, .nav-brand {\n   font-family: "Archivo", "Noto Sans TC", system-ui, sans-serif;\n }\n@@ -32,7 +33,13 @@ a:hover { color: var(--color-accent-600); }\n @keyframes avwire-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }\n \n /* — chrome — */\n-.page { min-height: 100vh; background: var(--color-bg); color: var(--color-text); }\n+.page {\n+  min-height: 100vh; max-width: 1280px; margin: 0 auto;\n+  background: var(--color-bg); color: var(--color-text);\n+  border-left: 1px solid var(--color-divider);\n+  border-right: 1px solid var(--color-divider);\n+  box-shadow: 0 0 32px rgba(0, 0, 0, .08);\n+}\n .pulse-dot { width: 8px; height: 8px; background: var(--color-accent); animation: avwire-pulse 2s infinite; }\n .marquee-track { display: flex; width: max-content; animation: avwire-marquee 80s linear infinite; white-space: nowrap; }\n \n@@ -65,8 +72,8 @@ a.seg-btn.active:hover { color: var(--color-bg); }\n \n /* — home grid — */\n .home-grid {\n-  max-width: 1440px; margin: 0 auto; display: grid;\n-  grid-template-columns: 280px minmax(0, 1fr) 320px; align-items: stretch;\n+  display: grid;\n+  grid-template-columns: 260px minmax(0, 1fr) 300px; align-items: stretch;\n }\n .rail-left { border-right: 2px solid var(--color-divider); padding: 20px; }\n .center-col { padding: 20px 24px; min-width: 0; }\n@@ -107,13 +114,14 @@ a.flash-row:hover { color: inherit; }\n \n /* — footer — */\n .footer-grid {\n-  max-width: 1440px; margin: 0 auto; padding: 24px 20px 32px;\n+  padding: 24px 20px 32px;\n   display: grid; grid-template-columns: 1fr 1.3fr; gap: 32px;\n }\n \n /* — responsive fallback: the design is desktop-first; below 1100px the\n      three-column home grid simply stacks. — */\n @media (max-width: 1100px) {\n+  .page { border-left: 0; border-right: 0; box-shadow: none; }\n   .home-grid { grid-template-columns: minmax(0, 1fr); }\n   .rail-left { border-right: 0; border-bottom: 2px solid var(--color-divider); }\n   .rail-right { border-left: 0; border-top: 2px solid var(--color-divider); }\n@@ -23,7 +23,7 @@\n <body>\n <div class="page">\n   <div style="border-bottom:1px solid var(--color-divider);">\n-    <div style="max-width:1440px;margin:0 auto;padding:6px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:12px;">\n+    <div style="padding:6px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:12px;">\n       <span class="text-muted" style="letter-spacing:.06em;">{{ build.date }}</span>\n       <span id="clock-utc" style="font-weight:600;letter-spacing:.06em;">UTC {{ build.utc_hm }}</span>\n       <span id="clock-tpe" class="text-muted" style="letter-spacing:.06em;">TPE {{ build.tpe_hm }}</span>\n@@ -42,7 +42,7 @@\n     </div>\n   </div>\n   <div style="border-bottom:2px solid var(--color-divider);">\n-    <div style="max-width:1440px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:28px;">\n+    <div style="padding:14px 20px;display:flex;align-items:center;gap:28px;">\n       <a href="{{ home_url }}" style="display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;">\n         <div style="width:34px;height:34px;background:var(--color-accent);color:var(--color-bg);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;">AW</div>\n         <div>\n@@ -1,6 +1,6 @@\n {% extends "base.html" %}\n {% block content %}\n-  <div style="max-width:1440px;margin:0 auto;padding:28px 20px 64px;">\n+  <div style="padding:28px 20px 64px;">\n     <span class="card-kicker">{{ t.incKicker }}</span>\n     <h2 style="margin:8px 0 6px;">{{ t.incTitle }}</h2>\n     <p class="text-muted" style="font-size:14px;max-width:640px;">{{ t.incSub }}</p>\n@@ -1,6 +1,6 @@\n {% extends "base.html" %}\n {% block content %}\n-  <div style="max-width:1440px;margin:0 auto;padding:28px 20px 64px;">\n+  <div style="padding:28px 20px 64px;">\n     <span class="card-kicker">{{ t.srcKicker }}</span>\n     <h2 style="margin:8px 0 6px;">{{ t.srcTitle }}</h2>\n     <p class="text-muted" style="font-size:14px;max-width:640px;">{{ t.srcSub }}</p>

你發現了隱藏主題!

8-bit 主題已解鎖。重新整理後,就能在主題選單選擇 8-bit。