Skip to content

Commit dc20da5

Browse files
committed
feat(home): add sponsor showcase
1 parent a4d9a6e commit dc20da5

5 files changed

Lines changed: 69 additions & 3 deletions

File tree

docs/.vitepress/config.mts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,6 @@ export default defineConfig({
8484
nav: [
8585
{ text: '课程介绍', link: '/' },
8686
{ text: '活动日历', link: '/schedule' },
87-
...(wiki ? [{ text: wiki.title, link: '/wiki/' }] : []),
8887
...(wiki
8988
? [
9089
wikiCourseItems.length > 0

docs/.vitepress/theme/components/HomePage.vue

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,17 @@ const formatSteps = [
3535
}
3636
]
3737
38+
const sponsors = [
39+
{
40+
name: '腾讯',
41+
logo: '/sponsors/tencent.png'
42+
},
43+
{
44+
name: '宽德投资',
45+
logo: '/sponsors/wizard-quant.jpg'
46+
}
47+
]
48+
3849
interface SchedulePreviewItem {
3950
key: string
4051
date: string
@@ -175,5 +186,26 @@ function scheduleHref(href?: string) {
175186
<span>飞书日历新增活动后会自动显示在这里。</span>
176187
</div>
177188
</section>
189+
190+
<section class="home-section home-sponsor-section" aria-labelledby="home-sponsor-title">
191+
<div class="home-section-heading">
192+
<p class="home-chip">赞助支持</p>
193+
<h2 id="home-sponsor-title">感谢合作伙伴支持</h2>
194+
</div>
195+
196+
<div class="home-sponsor-grid">
197+
<figure
198+
v-for="sponsor in sponsors"
199+
:key="sponsor.name"
200+
class="home-sponsor-card"
201+
>
202+
<img
203+
:src="withBase(sponsor.logo)"
204+
:alt="`${sponsor.name}标志`"
205+
loading="lazy"
206+
>
207+
</figure>
208+
</div>
209+
</section>
178210
</main>
179211
</template>

docs/.vitepress/theme/style.css

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,8 @@ a {
411411
.home-fact-card,
412412
.home-topic-card,
413413
.home-format-card,
414-
.home-schedule-card {
414+
.home-schedule-card,
415+
.home-sponsor-card {
415416
border: 1px solid var(--site-line);
416417
border-radius: 16px;
417418
background: var(--site-surface);
@@ -702,6 +703,30 @@ a {
702703
font-weight: 600;
703704
}
704705

706+
.home-sponsor-grid {
707+
display: grid;
708+
grid-template-columns: repeat(2, minmax(0, 1fr));
709+
gap: 14px;
710+
}
711+
712+
.home-sponsor-card {
713+
display: flex;
714+
min-width: 0;
715+
min-height: 168px;
716+
margin: 0;
717+
padding: 32px 42px;
718+
align-items: center;
719+
justify-content: center;
720+
background: #ffffff;
721+
}
722+
723+
.home-sponsor-card img {
724+
display: block;
725+
width: 100%;
726+
height: 88px;
727+
object-fit: contain;
728+
}
729+
705730
@media (max-width: 900px) {
706731
.home-topic-card {
707732
grid-template-columns: 64px minmax(0, 1fr);
@@ -736,7 +761,8 @@ a {
736761
}
737762

738763
.home-facts,
739-
.home-format-grid {
764+
.home-format-grid,
765+
.home-sponsor-grid {
740766
grid-template-columns: 1fr;
741767
}
742768

@@ -768,6 +794,15 @@ a {
768794
.home-schedule-arrow {
769795
display: none;
770796
}
797+
798+
.home-sponsor-card {
799+
min-height: 142px;
800+
padding: 26px 30px;
801+
}
802+
803+
.home-sponsor-card img {
804+
height: 74px;
805+
}
771806
}
772807

773808
@media (prefers-reduced-motion: reduce) {

docs/public/sponsors/tencent.png

24.9 KB
Loading
37.4 KB
Loading

0 commit comments

Comments
 (0)