From 8f42e7fa7b5b43f663c4c6498addde8742bd3d1d Mon Sep 17 00:00:00 2001 From: ClovertaTheTrilobita Date: Tue, 28 Jul 2026 13:08:49 +0800 Subject: [PATCH] update friends link style --- .../FriendlyLinks/FriendlyLinkList.astro | 77 +++++++++++++++++-- 1 file changed, 69 insertions(+), 8 deletions(-) diff --git a/src/components/FriendlyLinks/FriendlyLinkList.astro b/src/components/FriendlyLinks/FriendlyLinkList.astro index 09815c9..f682773 100644 --- a/src/components/FriendlyLinks/FriendlyLinkList.astro +++ b/src/components/FriendlyLinks/FriendlyLinkList.astro @@ -5,18 +5,19 @@ import { getLangFromUrl } from "@/i18n"; const lang = getLangFromUrl(Astro.url); const links = await getCollection("friends"); -// const { links = [] } = Astro.props; --- @@ -25,15 +26,75 @@ const links = await getCollection("friends"); .friendly-link-list { max-width: 770px; margin: 0 auto; + display: grid; - grid-template-columns: repeat(2, minmax(0, 1fr)); + grid-template-columns: repeat(24, minmax(0, 1fr)); gap: 1rem; align-items: start; } + .friendly-link-wrapper { + min-width: 0; + } + + .friendly-link-wrapper :global(.friendly-link-card) { + width: 100%; + box-sizing: border-box; + } + + @media (min-width: 721px) { + /* + * 连续波浪: + * 第 1 行:5.5 : 6.5 + * 第 2 行:6 : 6 + * 第 3 行:6.5 : 5.5 + * 第 4 行:6 : 6 + * 然后重复 + */ + + /* 5.5,即 11 / 24 */ + .friendly-link-wrapper:nth-child(8n + 1), + .friendly-link-wrapper:nth-child(8n + 6) { + grid-column: span 11; + } + + /* 6,即 12 / 24 */ + .friendly-link-wrapper:nth-child(8n + 3), + .friendly-link-wrapper:nth-child(8n + 4), + .friendly-link-wrapper:nth-child(8n + 7), + .friendly-link-wrapper:nth-child(8n + 8) { + grid-column: span 12; + } + + /* 6.5,即 13 / 24 */ + .friendly-link-wrapper:nth-child(8n + 2), + .friendly-link-wrapper:nth-child(8n + 5) { + grid-column: span 13; + } + } + @media (max-width: 720px) { .friendly-link-list { grid-template-columns: 1fr; } + + .friendly-link-wrapper { + justify-self: left; + } + + .friendly-link-wrapper:nth-child(4n + 1) { + width: 84%; + } + + /* 第 2、4、6、8……张 */ + .friendly-link-wrapper:nth-child(4n + 2), + .friendly-link-wrapper:nth-child(4n) { + width: 92%; + } + + /* 第 3、7、11……张 */ + .friendly-link-wrapper:nth-child(4n + 3) { + width: 100%; + } }