baseof.html 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <title>{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ .Title }} · {{ .Site.Title }}{{ end }}</title>
  7. <meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}">
  8. <link rel="stylesheet" href="{{ "css/site.css" | relURL }}">
  9. <link rel="icon" href="{{ "favicon.ico" | relURL }}" type="image/x-icon">
  10. <link rel="apple-touch-icon" href="{{ "logo.png" | relURL }}">
  11. <!-- 学术手稿字体 -->
  12. <link rel="preconnect" href="https://fonts.googleapis.com">
  13. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  14. <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&display=swap" rel="stylesheet">
  15. </head>
  16. <body>
  17. <header class="site-header">
  18. <div class="wrap header-inner">
  19. <div>
  20. <a class="site-title" href="{{ "/" | relURL }}">
  21. <img src="{{ "logo.png" | relURL }}" alt="Logo" class="site-logo">
  22. {{ .Site.Title }}
  23. </a>
  24. <p class="site-tagline">{{ .Site.Params.description }}</p>
  25. </div>
  26. <button class="menu-toggle" aria-label="菜单" aria-expanded="false">
  27. <span></span>
  28. <span></span>
  29. <span></span>
  30. </button>
  31. <nav class="site-nav">
  32. {{ range .Site.Menus.main }}
  33. <a href="{{ .URL }}">{{ .Name }}</a>
  34. {{ end }}
  35. </nav>
  36. </div>
  37. </header>
  38. <main class="wrap">
  39. {{ block "main" . }}{{ end }}
  40. </main>
  41. <footer class="site-footer wrap">
  42. <p>© {{ now.Format "2006" }} {{ .Site.Params.owner }} · Hugo personal site for AI briefs / blog / resume.</p>
  43. </footer>
  44. <script>
  45. document.addEventListener('DOMContentLoaded', function() {
  46. const toggle = document.querySelector('.menu-toggle');
  47. const nav = document.querySelector('.site-nav');
  48. toggle.addEventListener('click', function() {
  49. const isActive = toggle.classList.toggle('active');
  50. nav.classList.toggle('active');
  51. toggle.setAttribute('aria-expanded', isActive);
  52. });
  53. });
  54. </script>
  55. </body>
  56. </html>