From 790f51839c630a3a68a9335b8aff2e0f09741f30 Mon Sep 17 00:00:00 2001 From: Percy Ma Date: Thu, 2 Jun 2022 23:39:31 +0800 Subject: [PATCH] perf(a11y): make font size follow user brower settings close https://github.com/vuejs/vitepress/issues/570 --- src/client/app/components/Debug.vue | 24 ++-- src/client/theme-default/NotFound.vue | 34 +++--- src/client/theme-default/components/VPBox.vue | 22 ++-- .../theme-default/components/VPButton.vue | 14 +-- .../theme-default/components/VPCarbonAds.vue | 14 +-- src/client/theme-default/components/VPDoc.vue | 44 +++---- .../theme-default/components/VPDocAside.vue | 4 +- .../components/VPDocAsideOutline.vue | 24 ++-- .../theme-default/components/VPDocFooter.vue | 37 +++--- .../components/VPDocFooterLastUpdated.vue | 8 +- .../theme-default/components/VPFlyout.vue | 24 ++-- .../theme-default/components/VPFooter.vue | 10 +- .../theme-default/components/VPHero.vue | 86 ++++++------- .../theme-default/components/VPHome.vue | 8 +- .../components/VPHomeFeatures.vue | 10 +- .../components/VPHomeSponsors.vue | 26 ++-- .../theme-default/components/VPLink.vue | 8 +- .../theme-default/components/VPLocalNav.vue | 24 ++-- .../theme-default/components/VPMenu.vue | 26 ++-- .../theme-default/components/VPMenuGroup.vue | 16 +-- .../theme-default/components/VPMenuLink.vue | 12 +- .../theme-default/components/VPNavBar.vue | 22 ++-- .../components/VPNavBarExtra.vue | 16 +-- .../components/VPNavBarHamburger.vue | 20 +-- .../components/VPNavBarMenuLink.vue | 4 +- .../components/VPNavBarSearch.vue | 58 ++++----- .../components/VPNavBarTitle.vue | 12 +- .../components/VPNavBarTranslations.vue | 6 +- .../theme-default/components/VPNavScreen.vue | 14 +-- .../components/VPNavScreenAppearance.vue | 6 +- .../components/VPNavScreenMenuGroup.vue | 22 ++-- .../components/VPNavScreenMenuGroupLink.vue | 6 +- .../VPNavScreenMenuGroupSection.vue | 4 +- .../components/VPNavScreenMenuLink.vue | 8 +- .../components/VPNavScreenTranslations.vue | 18 +-- .../theme-default/components/VPSidebar.vue | 24 ++-- .../components/VPSidebarGroup.vue | 26 ++-- .../components/VPSidebarLink.vue | 6 +- .../theme-default/components/VPSkipLink.vue | 12 +- .../theme-default/components/VPSocialLink.vue | 8 +- .../theme-default/components/VPSwitch.vue | 26 ++-- .../components/icons/VPIconAlignJustify.vue | 2 +- .../components/icons/VPIconExternalLink.vue | 4 +- src/client/theme-default/styles/base.css | 16 +-- .../styles/components/custom-block.css | 14 +-- .../styles/components/vp-doc.css | 114 +++++++++--------- .../styles/components/vp-sponsor.css | 50 ++++---- src/client/theme-default/styles/utils.css | 4 +- src/client/theme-default/styles/vars.css | 20 +-- 49 files changed, 508 insertions(+), 509 deletions(-) diff --git a/src/client/app/components/Debug.vue b/src/client/app/components/Debug.vue index 41e926a0..5eb3ffcf 100644 --- a/src/client/app/components/Debug.vue +++ b/src/client/app/components/Debug.vue @@ -27,11 +27,11 @@ watch(open, (value) => { .debug { box-sizing: border-box; position: fixed; - right: 8px; - bottom: 8px; + right: .5rem; + bottom: .5rem; z-index: 9999; border-radius: 4px; - width: 74px; + width: 4.625rem; height: 32px; color: #eeeeee; overflow: hidden; @@ -57,7 +57,7 @@ watch(open, (value) => { @media (min-width: 512px) { .debug.open { - width: 512px; + width: 32rem; } } @@ -67,20 +67,20 @@ watch(open, (value) => { .title { margin: 0; - padding: 6px 16px 6px; - line-height: 20px; - font-size: 13px; + padding: .375rem 1rem .375rem; + line-height: 1.25rem; + font-size: .8125rem; } .block { - margin: 2px 0 0; - border-top: 1px solid rgba(255, 255, 255, 0.16); - padding: 8px 16px; + margin: .125rem 0 0; + border-top: .0625rem solid rgba(255, 255, 255, 0.16); + padding: .5rem 1rem; font-family: Hack, monospace; - font-size: 13px; + font-size: .8125rem; } .block + .block { - margin-top: 8px; + margin-top: .5rem; } diff --git a/src/client/theme-default/NotFound.vue b/src/client/theme-default/NotFound.vue index 193d11cd..934c9efd 100644 --- a/src/client/theme-default/NotFound.vue +++ b/src/client/theme-default/NotFound.vue @@ -23,55 +23,55 @@ const { site } = useData() diff --git a/src/client/theme-default/components/VPDocAside.vue b/src/client/theme-default/components/VPDocAside.vue index 4232d156..e7804fcf 100644 --- a/src/client/theme-default/components/VPDocAside.vue +++ b/src/client/theme-default/components/VPDocAside.vue @@ -37,10 +37,10 @@ const { page, theme } = useData() .VPDocAside :deep(.spacer + .VPDocAsideSponsors), .VPDocAside :deep(.spacer + .VPDocAsideCarbonAds) { - margin-top: 24px; + margin-top: 1.5rem; } .VPDocAside :deep(.VPDocAsideSponsors + .VPDocAsideCarbonAds) { - margin-top: 16px; + margin-top: 1rem; } diff --git a/src/client/theme-default/components/VPDocAsideOutline.vue b/src/client/theme-default/components/VPDocAsideOutline.vue index 26b556ad..f4b48646 100644 --- a/src/client/theme-default/components/VPDocAsideOutline.vue +++ b/src/client/theme-default/components/VPDocAsideOutline.vue @@ -72,34 +72,34 @@ function handleClick({ target: el }: Event) { .content { position: relative; - border-left: 1px solid var(--vp-c-divider-light); - padding-left: 16px; - font-size: 13px; + border-left: .0625rem solid var(--vp-c-divider-light); + padding-left: 1rem; + font-size: .8125rem; font-weight: 500; } .outline-marker { position: absolute; - top: 32px; - left: -1px; + top: 2rem; + left: -0.0625rem; z-index: 0; opacity: 0; - width: 1px; - height: 18px; + width: .0625rem; + height: 1.125rem; background-color: var(--vp-c-brand); transition: top 0.25s cubic-bezier(0, 1, 0.5, 1), background-color 0.5s, opacity 0.25s; } .outline-title { - letter-spacing: 0.4px; - line-height: 28px; - font-size: 13px; + letter-spacing: .025rem; + line-height: 1.75rem; + font-size: .8125rem; font-weight: 600; } .outline-link { display: block; - line-height: 28px; + line-height: 1.75rem; color: var(--vp-c-text-2); white-space: nowrap; overflow: hidden; @@ -114,7 +114,7 @@ function handleClick({ target: el }: Event) { } .outline-link.nested { - padding-left: 13px; + padding-left: .8125rem; } .root { diff --git a/src/client/theme-default/components/VPDocFooter.vue b/src/client/theme-default/components/VPDocFooter.vue index cb6deeed..f662ff0b 100644 --- a/src/client/theme-default/components/VPDocFooter.vue +++ b/src/client/theme-default/components/VPDocFooter.vue @@ -47,25 +47,24 @@ const control = usePrevNext() diff --git a/src/client/theme-default/components/VPFooter.vue b/src/client/theme-default/components/VPFooter.vue index b8f6537c..8ababfe1 100644 --- a/src/client/theme-default/components/VPFooter.vue +++ b/src/client/theme-default/components/VPFooter.vue @@ -19,8 +19,8 @@ const { hasSidebar } = useSidebar() .VPFooter { position: relative; z-index: var(--vp-z-index-footer); - border-top: 1px solid var(--vp-c-divider-light); - padding: 32px 24px; + border-top: .0625rem solid var(--vp-c-divider-light); + padding: 2rem 1.5rem; background-color: var(--vp-c-bg); } @@ -30,7 +30,7 @@ const { hasSidebar } = useSidebar() @media (min-width: 768px) { .VPFooter { - padding: 32px; + padding: 2rem; } } @@ -42,8 +42,8 @@ const { hasSidebar } = useSidebar() .message, .copyright { - line-height: 24px; - font-size: 14px; + line-height: 1.5rem; + font-size: .875rem; font-weight: 500; color: var(--vp-c-text-2); } diff --git a/src/client/theme-default/components/VPHero.vue b/src/client/theme-default/components/VPHero.vue index 51987dc5..3555880d 100644 --- a/src/client/theme-default/components/VPHero.vue +++ b/src/client/theme-default/components/VPHero.vue @@ -55,12 +55,12 @@ defineProps<{ diff --git a/src/client/theme-default/components/VPHome.vue b/src/client/theme-default/components/VPHome.vue index 12e85c39..886584b6 100644 --- a/src/client/theme-default/components/VPHome.vue +++ b/src/client/theme-default/components/VPHome.vue @@ -17,17 +17,17 @@ import VPHomeFeatures from './VPHomeFeatures.vue' diff --git a/src/client/theme-default/components/VPHomeFeatures.vue b/src/client/theme-default/components/VPHomeFeatures.vue index 86fc2a50..a8f9e073 100644 --- a/src/client/theme-default/components/VPHomeFeatures.vue +++ b/src/client/theme-default/components/VPHomeFeatures.vue @@ -43,28 +43,28 @@ const grid = computed(() => { diff --git a/src/client/theme-default/components/VPLink.vue b/src/client/theme-default/components/VPLink.vue index bf29e4b5..8dd77bd5 100644 --- a/src/client/theme-default/components/VPLink.vue +++ b/src/client/theme-default/components/VPLink.vue @@ -28,10 +28,10 @@ const isExternal = computed(() => props.href && /^[a-z]+:/i.test(props.href)) diff --git a/src/client/theme-default/components/VPMenu.vue b/src/client/theme-default/components/VPMenu.vue index 7dad2062..5fd689ff 100644 --- a/src/client/theme-default/components/VPMenu.vue +++ b/src/client/theme-default/components/VPMenu.vue @@ -23,9 +23,9 @@ defineProps<{ diff --git a/src/client/theme-default/components/VPMenuGroup.vue b/src/client/theme-default/components/VPMenuGroup.vue index 167874be..b7b8f068 100644 --- a/src/client/theme-default/components/VPMenuGroup.vue +++ b/src/client/theme-default/components/VPMenuGroup.vue @@ -19,9 +19,9 @@ defineProps<{ diff --git a/src/client/theme-default/components/VPNavBarExtra.vue b/src/client/theme-default/components/VPNavBarExtra.vue index aceca5ce..19c4c3cd 100644 --- a/src/client/theme-default/components/VPNavBarExtra.vue +++ b/src/client/theme-default/components/VPNavBarExtra.vue @@ -38,7 +38,7 @@ const { site, theme } = useData() diff --git a/src/client/theme-default/components/VPNavBarHamburger.vue b/src/client/theme-default/components/VPNavBarHamburger.vue index 1e014177..3039369b 100644 --- a/src/client/theme-default/components/VPNavBarHamburger.vue +++ b/src/client/theme-default/components/VPNavBarHamburger.vue @@ -31,7 +31,7 @@ defineEmits<{ display: flex; justify-content: center; align-items: center; - width: 48px; + width: 3rem; height: var(--vp-nav-height); } @@ -43,8 +43,8 @@ defineEmits<{ .container { position: relative; - width: 16px; - height: 14px; + width: 1rem; + height: .875rem; overflow: hidden; } @@ -52,9 +52,9 @@ defineEmits<{ .container:hover .middle { top: 6; left: 0; transform: translateX(0); } .container:hover .bottom { top: 12px; left: 0; transform: translateX(8px); } -.container.active .top { top: 6px; transform: translateX(0) rotate(225deg); } -.container.active .middle { top: 6px; transform: translateX(16px); } -.container.active .bottom { top: 6px; transform: translateX(0) rotate(135deg); } +.container.active .top { top: .375rem; transform: translateX(0) rotate(225deg); } +.container.active .middle { top: .375rem; transform: translateX(16px); } +.container.active .bottom { top: .375rem; transform: translateX(0) rotate(135deg); } .container.active:hover .top, .container.active:hover .middle, @@ -67,13 +67,13 @@ defineEmits<{ .middle, .bottom { position: absolute; - width: 16px; - height: 2px; + width: 1rem; + height: .125rem; background-color: var(--vp-c-text-1); transition: top .25s, background-color .5s, transform .25s; } .top { top: 0; left: 0; transform: translateX(0); } -.middle { top: 6px; left: 0; transform: translateX(8px); } -.bottom { top: 12px; left: 0; transform: translateX(4px); } +.middle { top: .375rem; left: 0; transform: translateX(8px); } +.bottom { top: .75rem; left: 0; transform: translateX(4px); } diff --git a/src/client/theme-default/components/VPNavBarMenuLink.vue b/src/client/theme-default/components/VPNavBarMenuLink.vue index 556f641f..7b51abe1 100644 --- a/src/client/theme-default/components/VPNavBarMenuLink.vue +++ b/src/client/theme-default/components/VPNavBarMenuLink.vue @@ -32,9 +32,9 @@ const { page } = useData() .VPNavBarMenuLink { display: flex; align-items: center; - padding: 0 12px; + padding: 0 .75rem; line-height: var(--vp-nav-height-mobile); - font-size: 14px; + font-size: .875rem; font-weight: 500; color: var(--vp-c-text-1); transition: color 0.25s; diff --git a/src/client/theme-default/components/VPNavBarSearch.vue b/src/client/theme-default/components/VPNavBarSearch.vue index 1d2973a5..00d09f3d 100644 --- a/src/client/theme-default/components/VPNavBarSearch.vue +++ b/src/client/theme-default/components/VPNavBarSearch.vue @@ -96,13 +96,13 @@ function load() { @media (min-width: 768px) { .VPNavBarSearch { flex-grow: 1; - padding-left: 24px; + padding-left: 1.5rem; } } @media (min-width: 960px) { .VPNavBarSearch { - padding-left: 32px; + padding-left: 2rem; } } @@ -134,8 +134,8 @@ function load() { align-items: center; margin: 0; padding: 0; - width: 32px; - height: 55px; + width: 2rem; + height: 3.4375rem; background: transparent; transition: border-color 0.25s; } @@ -145,8 +145,8 @@ function load() { } .DocSearch-Button:focus { - outline: 1px dotted; - outline: 5px auto -webkit-focus-ring-color; + outline: .0625rem dotted; + outline: .3125rem auto -webkit-focus-ring-color; } .DocSearch-Button:focus:not(:focus-visible) { @@ -156,11 +156,11 @@ function load() { @media (min-width: 768px) { .DocSearch-Button { justify-content: flex-start; - border: 1px solid transparent; + border: .0625rem solid transparent; border-radius: 8px; - padding: 0 10px 0 12px; + padding: 0 .625rem 0 .75rem; width: 100%; - height: 40px; + height: 2.5rem; background-color: var(--vp-c-bg-alt); } @@ -177,8 +177,8 @@ function load() { .DocSearch-Button .DocSearch-Search-Icon { position: relative; - width: 16px; - height: 16px; + width: 1rem; + height: 1rem; color: var(--vp-c-text-1); fill: currentColor; transition: color 0.5s; @@ -190,19 +190,19 @@ function load() { @media (min-width: 768px) { .DocSearch-Button .DocSearch-Search-Icon { - top: 1px; - margin-right: 8px; - width: 14px; - height: 14px; + top: .0625rem; + margin-right: .5rem; + width: .875rem; + height: .875rem; color: var(--vp-c-text-2); } } .DocSearch-Button .DocSearch-Button-Placeholder { display: none; - margin-top: 2px; - padding: 0 16px 0 0; - font-size: 13px; + margin-top: .125rem; + padding: 0 1rem 0 0; + font-size: .8125rem; font-weight: 500; color: var(--vp-c-text-2); transition: color 0.5s; @@ -232,35 +232,35 @@ function load() { .DocSearch-Button .DocSearch-Button-Key { display: block; - margin: 2px 0 0 0; - border: 1px solid var(--vp-c-divider); + margin: .125rem 0 0 0; + border: .0625rem solid var(--vp-c-divider); border-right: none; border-radius: 4px 0 0 4px; - padding-left: 6px; + padding-left: .375rem; min-width: 0; width: auto; - height: 22px; - line-height: 22px; + height: 1.375rem; + line-height: 1.375rem; font-family: var(--vp-font-family-base); - font-size: 12px; + font-size: .75rem; font-weight: 500; transition: color 0.5s, border-color 0.5s; } .DocSearch-Button .DocSearch-Button-Key + .DocSearch-Button-Key { - border-right: 1px solid var(--vp-c-divider); + border-right: .0625rem solid var(--vp-c-divider); border-left: none; border-radius: 0 4px 4px 0; - padding-left: 2px; - padding-right: 6px; + padding-left: .125rem; + padding-right: .375rem; } .dark .DocSearch-Footer { - border-top: 1px solid var(--vp-c-divider); + border-top: .0625rem solid var(--vp-c-divider); } .DocSearch-Form { - border: 1px solid var(--vp-c-brand); + border: .0625rem solid var(--vp-c-brand); background-color: var(--vp-c-white); } diff --git a/src/client/theme-default/components/VPNavBarTitle.vue b/src/client/theme-default/components/VPNavBarTitle.vue index c09c06dc..b027a1c2 100644 --- a/src/client/theme-default/components/VPNavBarTitle.vue +++ b/src/client/theme-default/components/VPNavBarTitle.vue @@ -19,14 +19,14 @@ const { hasSidebar } = useSidebar() diff --git a/src/client/theme-default/components/VPNavBarTranslations.vue b/src/client/theme-default/components/VPNavBarTranslations.vue index fe91597b..9402ed9d 100644 --- a/src/client/theme-default/components/VPNavBarTranslations.vue +++ b/src/client/theme-default/components/VPNavBarTranslations.vue @@ -36,9 +36,9 @@ const { theme } = useData() } .title { - padding: 0 24px 0 12px; - line-height: 32px; - font-size: 14px; + padding: 0 1.5rem 0 .75rem; + line-height: 2rem; + font-size: .875rem; font-weight: 700; color: var(--vp-c-text-1); } diff --git a/src/client/theme-default/components/VPNavScreen.vue b/src/client/theme-default/components/VPNavScreen.vue index 7204ac8f..7fd009c1 100644 --- a/src/client/theme-default/components/VPNavScreen.vue +++ b/src/client/theme-default/components/VPNavScreen.vue @@ -45,7 +45,7 @@ function unlockBodyScroll() { right: 0; bottom: 0; left: 0; - padding: 0 32px; + padding: 0 2rem; width: 100%; background-color: var(--vp-c-bg); overflow-y: auto; @@ -69,7 +69,7 @@ function unlockBodyScroll() { .VPNavScreen.fade-enter-from .container, .VPNavScreen.fade-leave-to .container { - transform: translateY(-8px); + transform: translateY(-0.5rem); } @media (min-width: 768px) { @@ -80,21 +80,21 @@ function unlockBodyScroll() { .container { margin: 0 auto; - padding: 24px 0 96px; - max-width: 288px; + padding: 1.5rem 0 6rem; + max-width: 18rem; } .menu + .translations, .menu + .appearance, .translations + .appearance { - margin-top: 24px; + margin-top: 1.5rem; } .menu + .social-links { - margin-top: 16px; + margin-top: 1rem; } .appearance + .social-links { - margin-top: 16px; + margin-top: 1rem; } diff --git a/src/client/theme-default/components/VPNavScreenAppearance.vue b/src/client/theme-default/components/VPNavScreenAppearance.vue index 3a804195..0bfa6ee2 100644 --- a/src/client/theme-default/components/VPNavScreenAppearance.vue +++ b/src/client/theme-default/components/VPNavScreenAppearance.vue @@ -18,14 +18,14 @@ const { site } = useData() justify-content: space-between; align-items: center; border-radius: 8px; - padding: 12px 14px 12px 16px; + padding: .75rem .875rem .75rem 1rem; background-color: var(--vp-c-bg-soft); transition: background-color 0.5s; } .text { - line-height: 24px; - font-size: 12px; + line-height: 1.5rem; + font-size: .75rem; font-weight: 500; color: var(--vp-c-text-2); transition: color 0.5s; diff --git a/src/client/theme-default/components/VPNavScreenMenuGroup.vue b/src/client/theme-default/components/VPNavScreenMenuGroup.vue index d66e02c9..27e19fda 100644 --- a/src/client/theme-default/components/VPNavScreenMenuGroup.vue +++ b/src/client/theme-default/components/VPNavScreenMenuGroup.vue @@ -54,8 +54,8 @@ function toggle() { diff --git a/src/client/theme-default/components/VPNavScreenMenuGroupLink.vue b/src/client/theme-default/components/VPNavScreenMenuGroupLink.vue index 61f5bd83..11e28911 100644 --- a/src/client/theme-default/components/VPNavScreenMenuGroupLink.vue +++ b/src/client/theme-default/components/VPNavScreenMenuGroupLink.vue @@ -19,12 +19,12 @@ const closeScreen = inject('close-screen') as () => void diff --git a/src/client/theme-default/components/VPSidebar.vue b/src/client/theme-default/components/VPSidebar.vue index 4d486e80..ae745a63 100644 --- a/src/client/theme-default/components/VPSidebar.vue +++ b/src/client/theme-default/components/VPSidebar.vue @@ -52,9 +52,9 @@ watchPostEffect(async () => { bottom: 0; left: 0; z-index: var(--vp-z-index-sidebar); - padding: 32px 32px 96px; - width: calc(100vw - 64px); - max-width: 320px; + padding: 2rem 2rem 6rem; + width: calc(100vw - 4rem); + max-width: 20rem; background-color: var(--vp-c-bg); opacity: 0; box-shadow: var(--vp-c-shadow-3); @@ -81,7 +81,7 @@ watchPostEffect(async () => { .VPSidebar { z-index: 1; padding-top: var(--vp-nav-height-desktop); - padding-bottom: 128px; + padding-bottom: 8rem; width: var(--vp-sidebar-width); max-width: 100%; width: var(--vp-sidebar-width); @@ -96,8 +96,8 @@ watchPostEffect(async () => { @media (min-width: 1440px) { .VPSidebar { - padding-left: calc((100% - (var(--vp-layout-max-width) - 64px)) / 2); - width: calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px); + padding-left: calc((100% - (var(--vp-layout-max-width) - 4rem)) / 2); + width: calc((100% - (var(--vp-layout-max-width) - 4rem)) / 2 + var(--vp-sidebar-width) - 2rem); } } @@ -106,19 +106,19 @@ watchPostEffect(async () => { } .group + .group { - margin-top: 32px; - border-top: 1px solid var(--vp-c-divider-light); - padding-top: 10px; + margin-top: 2rem; + border-top: .0625rem solid var(--vp-c-divider-light); + padding-top: .625rem; } @media (min-width: 960px) { .group { - padding-top: 10px; - width: calc(var(--vp-sidebar-width) - 64px); + padding-top: .625rem; + width: calc(var(--vp-sidebar-width) - 4rem); } .group + .group { - margin-top: 24px; + margin-top: 1.5rem; } } diff --git a/src/client/theme-default/components/VPSidebarGroup.vue b/src/client/theme-default/components/VPSidebarGroup.vue index 19890585..f17a15b7 100644 --- a/src/client/theme-default/components/VPSidebarGroup.vue +++ b/src/client/theme-default/components/VPSidebarGroup.vue @@ -48,10 +48,10 @@ function toggle() { } .title-text { - padding-top: 6px; - padding-bottom: 6px; - line-height: 20px; - font-size: 14px; + padding-top: .375rem; + padding-bottom: .375rem; + line-height: 1.25rem; + font-size: .875rem; font-weight: 700; color: var(--vp-c-text-1); } @@ -59,10 +59,10 @@ function toggle() { .action { display: none; position: relative; - margin-right: -8px; + margin-right: -0.5rem; border-radius: 4px; - width: 32px; - height: 32px; + width: 2rem; + height: 2rem; color: var(--vp-c-text-3); transition: color 0.25s; } @@ -77,10 +77,10 @@ function toggle() { .icon { position: absolute; - top: 8px; - left: 8px; - width: 16px; - height: 16px; + top: .5rem; + left: .5rem; + width: 1rem; + height: 1rem; fill: currentColor; } @@ -95,13 +95,13 @@ function toggle() { } .VPSidebarGroup.collapsed .items { - margin-bottom: -22px; + margin-bottom: -1.375rem; max-height: 0; } @media (min-width: 960px) { .VPSidebarGroup.collapsed .items { - margin-bottom: -14px; + margin-bottom: -0.875rem; } } diff --git a/src/client/theme-default/components/VPSidebarLink.vue b/src/client/theme-default/components/VPSidebarLink.vue index 41937655..7f191ae1 100644 --- a/src/client/theme-default/components/VPSidebarLink.vue +++ b/src/client/theme-default/components/VPSidebarLink.vue @@ -27,7 +27,7 @@ const closeSideBar = inject('close-sidebar') as () => void diff --git a/src/client/theme-default/components/VPSocialLink.vue b/src/client/theme-default/components/VPSocialLink.vue index 5b86ccdd..684ada09 100644 --- a/src/client/theme-default/components/VPSocialLink.vue +++ b/src/client/theme-default/components/VPSocialLink.vue @@ -44,8 +44,8 @@ const icons = { display: flex; justify-content: center; align-items: center; - width: 36px; - height: 36px; + width: 2.25rem; + height: 2.25rem; color: var(--vp-c-text-2); transition: color .5s; } @@ -56,8 +56,8 @@ const icons = { } .icon { - width: 20px; - height: 20px; + width: 1.25rem; + height: 1.25rem; fill: currentColor; } diff --git a/src/client/theme-default/components/VPSwitch.vue b/src/client/theme-default/components/VPSwitch.vue index 94c47b70..68172c19 100644 --- a/src/client/theme-default/components/VPSwitch.vue +++ b/src/client/theme-default/components/VPSwitch.vue @@ -13,10 +13,10 @@ position: relative; border-radius: 11px; display: block; - width: 40px; - height: 22px; + width: 2.5rem; + height: 1.375rem; flex-shrink: 0; - border: 1px solid var(--vp-c-divider); + border: .0625rem solid var(--vp-c-divider); background-color: var(--vp-c-bg-mute); transition: border-color 0.25s, background-color 0.25s; } @@ -27,10 +27,10 @@ .check { position: absolute; - top: 1px; - left: 1px; - width: 18px; - height: 18px; + top: .0625rem; + left: .0625rem; + width: 1.125rem; + height: 1.125rem; border-radius: 50%; background-color: var(--vp-c-white); box-shadow: var(--vp-shadow-1); @@ -44,18 +44,18 @@ .icon { position: relative; display: block; - width: 18px; - height: 18px; + width: 1.125rem; + height: 1.125rem; border-radius: 50%; overflow: hidden; } .icon :deep(svg) { position: absolute; - top: 3px; - left: 3px; - width: 12px; - height: 12px; + top: .1875rem; + left: .1875rem; + width: .75rem; + height: .75rem; fill: var(--vp-c-text-2); } diff --git a/src/client/theme-default/components/icons/VPIconAlignJustify.vue b/src/client/theme-default/components/icons/VPIconAlignJustify.vue index 653dab13..cac090d0 100644 --- a/src/client/theme-default/components/icons/VPIconAlignJustify.vue +++ b/src/client/theme-default/components/icons/VPIconAlignJustify.vue @@ -1,5 +1,5 @@