Skip to content

Commit ebe0d8f

Browse files
authored
Stabilize campus navigation printing and live facilities
Print/PDF rendering, navigation information architecture, live facility state, typography, deep links and page-specific performance bundles.
1 parent 3aa3c23 commit ebe0d8f

93 files changed

Lines changed: 2006 additions & 541 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,11 +106,12 @@ src/
106106
styles/ base and feature-specific stylesheets
107107
scripts/ build, preview, validation, scaffolding and asset helpers
108108
*.html ten generated GitHub Pages artifacts
109-
styles.css generated GitHub Pages artifact
109+
styles.css generated shared CSS artifact
110+
styles-*.css generated per-page CSS artifacts
110111
site.config.mjs
111112
```
112113

113-
Edit `src/`, not the generated root HTML pages or `styles.css`.
114+
Edit `src/`, not the generated root HTML pages or root `styles*.css` bundles.
114115

115116
## Common commands
116117

@@ -119,7 +120,7 @@ modules only.
119120

120121
```bash
121122
npm run dev # rebuild on change and serve at localhost:4173
122-
npm run build # generate all ten root pages and styles.css
123+
npm run build # generate ten pages and shared/per-page CSS bundles
123124
npm run check # build + i18n coverage + JS syntax
124125
npm run check:gaokao # marks, translations, rotation-safe explanations, key balance and offline files
125126
npm run check:courses # catalogue parity, translations, times, capacity, prerequisites and unusual conflicts

academics.html

Lines changed: 55 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<link rel="icon" href="assets/crest.svg" type="image/svg+xml">
2121

2222
<link rel="stylesheet" href="styles.css">
23+
<link rel="stylesheet" href="styles-academics.css">
2324
<script type="module" src="src/js/main.js"></script>
2425
</head>
2526
<body data-page="academics">
@@ -47,15 +48,28 @@
4748
</a>
4849

4950
<nav class="desktop-nav" aria-label="主要導覽">
50-
<a href="index.html#about">學校介紹</a>
51-
<a href="academics.html#academics">學術單位</a>
52-
<a href="admissions.html#admissions">招生</a>
53-
<a href="library.html#library">圖書館</a>
54-
<a href="clinic.html#clinic">校醫院</a>
55-
<a href="housing.html#housing">住宿</a>
56-
<a href="research.html#research">成果</a>
57-
<a href="incidents.html#incident-center">事件</a>
58-
<a href="campus.html#campus">校園風采</a>
51+
<details class="nav-group" data-nav-group="university">
52+
<summary>大學與學術 <span aria-hidden="true"></span></summary>
53+
<div class="nav-group-panel">
54+
<p>UNIVERSITY / ACADEMICS</p>
55+
<a href="index.html#about"><strong>學校介紹</strong><small>校訓、傳統與校史</small></a>
56+
<a href="academics.html#academics"><strong>學術單位</strong><small>學院、課程與師資</small></a>
57+
<a href="research.html#research"><strong>研究成果</strong><small>方法、失敗與訂正</small></a>
58+
<a href="campus.html#campus"><strong>校園生活</strong><small>地圖、社團與 BBS</small></a>
59+
</div>
60+
</details>
61+
<details class="nav-group" data-nav-group="services">
62+
<summary>入學與學生服務 <span aria-hidden="true"></span></summary>
63+
<div class="nav-group-panel nav-group-panel-wide">
64+
<p>ADMISSIONS / STUDENT SERVICES</p>
65+
<a href="admissions.html#admissions"><strong>招生與試驗</strong><small>申請、考試與統一試驗</small></a>
66+
<a href="mytu.html#my-tu"><strong>My TU</strong><small>學籍、選課與成績</small></a>
67+
<a href="library.html#library"><strong>霧湖圖書館</strong><small>借閱、續借與預約</small></a>
68+
<a href="clinic.html#clinic"><strong>永遠亭校醫院</strong><small>分診、處方與康復</small></a>
69+
<a href="housing.html#housing"><strong>住宿與室友</strong><small>房間、配對與換房</small></a>
70+
<a href="incidents.html#incident-center"><strong>事件中心</strong><small>案卷、模擬與結案</small></a>
71+
</div>
72+
</details>
5973
</nav>
6074

6175
<div class="header-tools">
@@ -90,18 +104,28 @@
90104
<span aria-hidden="true"></span> SEARCH / 全站搜尋
91105
</button>
92106
<nav aria-label="行動版導覽">
93-
<a href="index.html#about"><span>01</span>學校介紹</a>
94-
<a href="academics.html#academics"><span>02</span>學術單位</a>
95-
<a href="academics.html#faculty"><span>03</span>師資陣容</a>
96-
<a href="admissions.html#admissions"><span>04</span>招生情報</a>
97-
<a href="library.html#library"><span>05</span>霧湖圖書館</a>
98-
<a href="clinic.html#clinic"><span>06</span>永遠亭校醫院</a>
99-
<a href="housing.html#housing"><span>07</span>宿舍生活</a>
100-
<a href="research.html#research"><span>08</span>研究成果</a>
101-
<a href="incidents.html#incident-center"><span>09</span>事件中心</a>
102-
<a href="campus.html#campus"><span>10</span>校園風采</a>
103-
<a href="campus.html#bbs"><span>11</span>校園 BBS</a>
104-
<a href="mytu.html#my-tu"><span>12</span>MY TU</a>
107+
<section>
108+
<p>大學與學術</p>
109+
<div>
110+
<a href="index.html#about">學校介紹</a>
111+
<a href="academics.html#academics">學術單位</a>
112+
<a href="academics.html#faculty">師資陣容</a>
113+
<a href="research.html#research">研究成果</a>
114+
<a href="campus.html#campus">校園生活</a>
115+
</div>
116+
</section>
117+
<section>
118+
<p>入學與學生服務</p>
119+
<div>
120+
<a href="admissions.html#admissions">招生情報</a>
121+
<a href="mytu.html#my-tu">My TU 學籍中心</a>
122+
<a href="library.html#library">霧湖圖書館</a>
123+
<a href="clinic.html#clinic">永遠亭校醫院</a>
124+
<a href="housing.html#housing">宿舍生活</a>
125+
<a href="incidents.html#incident-center">事件中心</a>
126+
<a href="campus.html#bbs">校園 BBS</a>
127+
</div>
128+
</section>
105129
</nav>
106130
<div class="mobile-languages" role="group" aria-label="Language">
107131
<button class="language-button active" type="button" data-lang="zh-Hant">中文</button>
@@ -227,7 +251,7 @@ <h2>跟真正做過的人學。</h2>
227251
<div class="faculty-grid">
228252
<article class="faculty-card reveal" data-category="boundary">
229253
<div class="faculty-portrait portrait-reimu">
230-
<img decoding="async" src="assets/images/faculty/set-a/reimu.webp" alt="博麗靈夢教授" loading="lazy" width="1000" height="750">
254+
<img decoding="async" src="assets/images/faculty/set-a/reimu.webp" srcset="assets/images/faculty/set-a/reimu-mobile.webp 560w, assets/images/faculty/set-a/reimu.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="博麗靈夢教授" loading="lazy" width="1000" height="750">
231255
<span class="portrait-mark"></span>
232256
</div>
233257
<div class="faculty-info">
@@ -240,7 +264,7 @@ <h3>博麗 靈夢 <small>Reimu Hakurei</small></h3>
240264

241265
<article class="faculty-card reveal" data-category="boundary">
242266
<div class="faculty-portrait portrait-yukari">
243-
<img decoding="async" src="assets/images/faculty/set-a/yukari.webp" alt="八雲紫教授" loading="lazy" width="1000" height="750">
267+
<img decoding="async" src="assets/images/faculty/set-a/yukari.webp" srcset="assets/images/faculty/set-a/yukari-mobile.webp 560w, assets/images/faculty/set-a/yukari.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="八雲紫教授" loading="lazy" width="1000" height="750">
244268
<span class="portrait-mark"></span>
245269
</div>
246270
<div class="faculty-info">
@@ -253,7 +277,7 @@ <h3>八雲 紫 <small>Yukari Yakumo</small></h3>
253277

254278
<article class="faculty-card reveal" data-category="boundary">
255279
<div class="faculty-portrait portrait-keine">
256-
<img decoding="async" src="assets/images/faculty/set-a/keine.webp" alt="上白澤慧音教授" loading="lazy" width="1000" height="750">
280+
<img decoding="async" src="assets/images/faculty/set-a/keine.webp" srcset="assets/images/faculty/set-a/keine-mobile.webp 560w, assets/images/faculty/set-a/keine.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="上白澤慧音教授" loading="lazy" width="1000" height="750">
257281
<span class="portrait-mark"></span>
258282
</div>
259283
<div class="faculty-info">
@@ -266,7 +290,7 @@ <h3>上白澤 慧音 <small>Keine Kamishirasawa</small></h3>
266290

267291
<article class="faculty-card reveal" data-category="science">
268292
<div class="faculty-portrait portrait-patchouli">
269-
<img decoding="async" src="assets/images/faculty/set-a/patchouli.webp" alt="帕秋莉・諾蕾姬教授" loading="lazy" width="1000" height="750">
293+
<img decoding="async" src="assets/images/faculty/set-a/patchouli.webp" srcset="assets/images/faculty/set-a/patchouli-mobile.webp 560w, assets/images/faculty/set-a/patchouli.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="帕秋莉・諾蕾姬教授" loading="lazy" width="1000" height="750">
270294
<span class="portrait-mark"></span>
271295
</div>
272296
<div class="faculty-info">
@@ -279,7 +303,7 @@ <h3>帕秋莉・諾蕾姬 <small>Patchouli Knowledge</small></h3>
279303

280304
<article class="faculty-card reveal" data-category="science">
281305
<div class="faculty-portrait portrait-marisa">
282-
<img decoding="async" src="assets/images/faculty/set-a/marisa.webp" alt="霧雨魔理沙教授" loading="lazy" width="1000" height="750">
306+
<img decoding="async" src="assets/images/faculty/set-a/marisa.webp" srcset="assets/images/faculty/set-a/marisa-mobile.webp 560w, assets/images/faculty/set-a/marisa.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="霧雨魔理沙教授" loading="lazy" width="1000" height="750">
283307
<span class="portrait-mark"></span>
284308
</div>
285309
<div class="faculty-info">
@@ -292,7 +316,7 @@ <h3>霧雨 魔理沙 <small>Marisa Kirisame</small></h3>
292316

293317
<article class="faculty-card reveal" data-category="science">
294318
<div class="faculty-portrait portrait-eirin">
295-
<img decoding="async" src="assets/images/faculty/set-a/eirin.webp" alt="八意永琳教授" loading="lazy" width="1000" height="750">
319+
<img decoding="async" src="assets/images/faculty/set-a/eirin.webp" srcset="assets/images/faculty/set-a/eirin-mobile.webp 560w, assets/images/faculty/set-a/eirin.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="八意永琳教授" loading="lazy" width="1000" height="750">
296320
<span class="portrait-mark"></span>
297321
</div>
298322
<div class="faculty-info">
@@ -305,7 +329,7 @@ <h3>八意 永琳 <small>Eirin Yagokoro</small></h3>
305329

306330
<article class="faculty-card reveal" data-category="society">
307331
<div class="faculty-portrait portrait-nitori">
308-
<img decoding="async" src="assets/images/faculty/set-a/nitori.webp" alt="河城荷取教授" loading="lazy" width="1000" height="750">
332+
<img decoding="async" src="assets/images/faculty/set-a/nitori.webp" srcset="assets/images/faculty/set-a/nitori-mobile.webp 560w, assets/images/faculty/set-a/nitori.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="河城荷取教授" loading="lazy" width="1000" height="750">
309333
<span class="portrait-mark"></span>
310334
</div>
311335
<div class="faculty-info">
@@ -318,7 +342,7 @@ <h3>河城 荷取 <small>Nitori Kawashiro</small></h3>
318342

319343
<article class="faculty-card reveal" data-category="society">
320344
<div class="faculty-portrait portrait-aya">
321-
<img decoding="async" src="assets/images/faculty/set-a/aya.webp" alt="射命丸文教授" loading="lazy" width="1000" height="750">
345+
<img decoding="async" src="assets/images/faculty/set-a/aya.webp" srcset="assets/images/faculty/set-a/aya-mobile.webp 560w, assets/images/faculty/set-a/aya.webp 1000w" sizes="(max-width: 700px) 92vw, 25vw" alt="射命丸文教授" loading="lazy" width="1000" height="750">
322346
<span class="portrait-mark"></span>
323347
</div>
324348
<div class="faculty-info">
@@ -351,6 +375,8 @@ <h3 id="friction-title">制度寫得很整齊。教師本人沒有。</h3>
351375
<div class="faith-council-media">
352376
<img decoding="async"
353377
src="assets/images/faculty/faith-council.webp"
378+
srcset="assets/images/faculty/faith-council-mobile.webp 720w, assets/images/faculty/faith-council.webp 1536w"
379+
sizes="(max-width: 700px) 94vw, 48vw"
354380
alt="聖白蓮、八坂神奈子、豐聰耳神子與東風谷早苗在破舊會議室裡爭論祭典資源圖"
355381
loading="lazy"
356382
width="1536"

admissions.html

Lines changed: 45 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<link rel="icon" href="assets/crest.svg" type="image/svg+xml">
2121

2222
<link rel="stylesheet" href="styles.css">
23+
<link rel="stylesheet" href="styles-admissions.css">
2324
<script type="module" src="src/js/main.js"></script>
2425
</head>
2526
<body data-page="admissions">
@@ -47,15 +48,28 @@
4748
</a>
4849

4950
<nav class="desktop-nav" aria-label="主要導覽">
50-
<a href="index.html#about">學校介紹</a>
51-
<a href="academics.html#academics">學術單位</a>
52-
<a href="admissions.html#admissions">招生</a>
53-
<a href="library.html#library">圖書館</a>
54-
<a href="clinic.html#clinic">校醫院</a>
55-
<a href="housing.html#housing">住宿</a>
56-
<a href="research.html#research">成果</a>
57-
<a href="incidents.html#incident-center">事件</a>
58-
<a href="campus.html#campus">校園風采</a>
51+
<details class="nav-group" data-nav-group="university">
52+
<summary>大學與學術 <span aria-hidden="true"></span></summary>
53+
<div class="nav-group-panel">
54+
<p>UNIVERSITY / ACADEMICS</p>
55+
<a href="index.html#about"><strong>學校介紹</strong><small>校訓、傳統與校史</small></a>
56+
<a href="academics.html#academics"><strong>學術單位</strong><small>學院、課程與師資</small></a>
57+
<a href="research.html#research"><strong>研究成果</strong><small>方法、失敗與訂正</small></a>
58+
<a href="campus.html#campus"><strong>校園生活</strong><small>地圖、社團與 BBS</small></a>
59+
</div>
60+
</details>
61+
<details class="nav-group" data-nav-group="services">
62+
<summary>入學與學生服務 <span aria-hidden="true"></span></summary>
63+
<div class="nav-group-panel nav-group-panel-wide">
64+
<p>ADMISSIONS / STUDENT SERVICES</p>
65+
<a href="admissions.html#admissions"><strong>招生與試驗</strong><small>申請、考試與統一試驗</small></a>
66+
<a href="mytu.html#my-tu"><strong>My TU</strong><small>學籍、選課與成績</small></a>
67+
<a href="library.html#library"><strong>霧湖圖書館</strong><small>借閱、續借與預約</small></a>
68+
<a href="clinic.html#clinic"><strong>永遠亭校醫院</strong><small>分診、處方與康復</small></a>
69+
<a href="housing.html#housing"><strong>住宿與室友</strong><small>房間、配對與換房</small></a>
70+
<a href="incidents.html#incident-center"><strong>事件中心</strong><small>案卷、模擬與結案</small></a>
71+
</div>
72+
</details>
5973
</nav>
6074

6175
<div class="header-tools">
@@ -90,18 +104,28 @@
90104
<span aria-hidden="true"></span> SEARCH / 全站搜尋
91105
</button>
92106
<nav aria-label="行動版導覽">
93-
<a href="index.html#about"><span>01</span>學校介紹</a>
94-
<a href="academics.html#academics"><span>02</span>學術單位</a>
95-
<a href="academics.html#faculty"><span>03</span>師資陣容</a>
96-
<a href="admissions.html#admissions"><span>04</span>招生情報</a>
97-
<a href="library.html#library"><span>05</span>霧湖圖書館</a>
98-
<a href="clinic.html#clinic"><span>06</span>永遠亭校醫院</a>
99-
<a href="housing.html#housing"><span>07</span>宿舍生活</a>
100-
<a href="research.html#research"><span>08</span>研究成果</a>
101-
<a href="incidents.html#incident-center"><span>09</span>事件中心</a>
102-
<a href="campus.html#campus"><span>10</span>校園風采</a>
103-
<a href="campus.html#bbs"><span>11</span>校園 BBS</a>
104-
<a href="mytu.html#my-tu"><span>12</span>MY TU</a>
107+
<section>
108+
<p>大學與學術</p>
109+
<div>
110+
<a href="index.html#about">學校介紹</a>
111+
<a href="academics.html#academics">學術單位</a>
112+
<a href="academics.html#faculty">師資陣容</a>
113+
<a href="research.html#research">研究成果</a>
114+
<a href="campus.html#campus">校園生活</a>
115+
</div>
116+
</section>
117+
<section>
118+
<p>入學與學生服務</p>
119+
<div>
120+
<a href="admissions.html#admissions">招生情報</a>
121+
<a href="mytu.html#my-tu">My TU 學籍中心</a>
122+
<a href="library.html#library">霧湖圖書館</a>
123+
<a href="clinic.html#clinic">永遠亭校醫院</a>
124+
<a href="housing.html#housing">宿舍生活</a>
125+
<a href="incidents.html#incident-center">事件中心</a>
126+
<a href="campus.html#bbs">校園 BBS</a>
127+
</div>
128+
</section>
105129
</nav>
106130
<div class="mobile-languages" role="group" aria-label="Language">
107131
<button class="language-button active" type="button" data-lang="zh-Hant">中文</button>
77.8 KB
Loading
45.9 KB
Loading
42 KB
Loading
37.6 KB
Loading
54.3 KB
Loading
58.5 KB
Loading
38.1 KB
Loading

0 commit comments

Comments
 (0)