Skip to content

Commit

Permalink
fix(theme): remove extra padding from top when navbar is hidden (#2575)
Browse files Browse the repository at this point in the history
Co-authored-by: Divyansh Singh <40380293+brc-dd@users.noreply.github.com>
  • Loading branch information
buqiyuan and brc-dd committed Sep 16, 2023
1 parent 0cd87b1 commit fd46dc9
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/client/theme-default/Layout.vue
Expand Up @@ -35,7 +35,7 @@ provide('hero-image-slot-exists', heroImageSlotExists)
<slot name="layout-top" />
<VPSkipLink />
<VPBackdrop class="backdrop" :show="isSidebarOpen" @click="closeSidebar" />
<VPNav v-if="frontmatter.navbar !== false">
<VPNav>
<template #nav-bar-title-before><slot name="nav-bar-title-before" /></template>
<template #nav-bar-title-after><slot name="nav-bar-title-after" /></template>
<template #nav-bar-content-before><slot name="nav-bar-content-before" /></template>
Expand Down
17 changes: 15 additions & 2 deletions src/client/theme-default/components/VPNav.vue
@@ -1,16 +1,29 @@
<script setup lang="ts">
import { provide } from 'vue'
import { inBrowser } from 'vitepress'
import { computed, provide, watchEffect } from 'vue'
import { useData } from '../composables/data'
import { useNav } from '../composables/nav'
import VPNavBar from './VPNavBar.vue'
import VPNavScreen from './VPNavScreen.vue'
const { isScreenOpen, closeScreen, toggleScreen } = useNav()
const { frontmatter } = useData()
const hasNavbar = computed(() => {
return frontmatter.value.navbar !== false
})
provide('close-screen', closeScreen)
watchEffect(() => {
if (inBrowser) {
document.documentElement.classList.toggle('hide-nav', !hasNavbar.value)
}
})
</script>

<template>
<header class="VPNav">
<header v-if="hasNavbar" class="VPNav">
<VPNavBar :is-screen-open="isScreenOpen" @toggle-screen="toggleScreen">
<template #nav-bar-title-before><slot name="nav-bar-title-before" /></template>
<template #nav-bar-title-after><slot name="nav-bar-title-after" /></template>
Expand Down
8 changes: 8 additions & 0 deletions src/client/theme-default/styles/vars.css
Expand Up @@ -426,6 +426,14 @@
--vp-nav-logo-height: 24px;
}

.hide-nav {
--vp-nav-height: 0px;
}

.hide-nav .VPSidebar {
--vp-nav-height: 22px;
}

/**
* Component: Local Nav
* -------------------------------------------------------------------------- */
Expand Down

0 comments on commit fd46dc9

Please sign in to comment.