顶部导航已隐藏

2024-01-16

当我滚动到页面底部并看到页脚时,我不希望隐藏导航顶部。

下面是滚动之前的状态。

Below is a screenshot when scrolling down to the page. enter image description here

这是代码

<template>
  <div id="app">
    <v-app>
      <v-app-bar>header</v-app-bar>
      <div class="d-flex flex-0-1-100">
        <v-navigation-drawer
          border="r"
          permanent
          fixed
          class="pa-1 position-sticky"
          style="max-height: calc(100vh - 64px)"
        >
          <div style="border: 2px solid pink; height: 100%">
            nav bar
            <v-text-field
              v-model.number="contentHeight"
              min="0"
              step="400"
              type="number"
              label="content height (px)"
            />
          </div>
        </v-navigation-drawer>

        <v-main class="bg-grey pl-0">
          Main content
          <div
            :style="{height: contentHeight + 'px'}"
            class="bg-brown-darken-2"
          >
            content ({{contentHeight}}px)
          </div>
        </v-main>
      </div>
      <v-footer border="t">footer</v-footer>
    </v-app>
  </div>
</template>

<script setup>
  import { ref } from 'vue'
  const contentHeight = ref(1000)
</script>

如果您能检查一下,我将不胜感激操场 https://play.vuetifyjs.com/#eNqlVMtu2zAQ/JWFgMIpGkp2EvTgOkF666VfEOVASyubtfgASSsyDP17l3rYknxIgepgmLvLmZ1Zkm/n6KcxcXXEaB1tPEpTco8vqQLY5KICkT+nETcmjdoYRStGy34xLNmW25c98hztJrlGLkUBKSu5cwSWs6LEGsIPW7IVWy2XF/AeUfFK7LgXWrHc8g+01yzAVluiISCbRuO4QSu5QuXHwULUmI8DQxeGsxUY7UTL4rzIDqcpnvOnEqlS8prtUez2fg0ZL7M7arjaA4PvT6b+Ot4zEtFrHjC6ntfwYGpwuhQ5GKEOP2DAJcgvExPCRy4AuTgNkjsea88KgeVEWPgqJnWOZayOcttalGnlyZFfLc1UXvikUFRE9s8TzqOhzFMYzTznTyZI6jhu0yXfYnml7iXC3cyr8CVTwxJybHwO6CDdHATKT06K5EJdZrrdsZ3FE5iSTY8UwO+2rmtpPqVpU+thZufL0McmwjdYmHrRzLWMetha/UH9cntAxR6mhbMRDybdnc8TlqYJdn1iTtB+vWKTAnKm0Nqjvd4WGv9LFwt7u3/Dle6ubHfpe5xNMnoLaOkyK4wHh/7YFQpptPVwBosFNFBYLWFBz8giJEmM8zPjnkNluDxLUrZJOkCCiu6jDosEmfiP04peonNASfuES6M1tJEQI46wTqO998atkyTLFW2jcy8qGyv0iTIyeaWyxB6VFxJZruXrY/wYP5E458fhGJ1sB+bQEkga3Y9ovCjoTfiUqq9sGVYPHUUfY3QbXOC4wU6IsELLLCqaT7hI/yZptm0sa5a6kRbYm1Q1ZHhJr4+beZ251ue3ocn/09yiBaj3wNjcR22jRN3tiN7/Ah629Tk=

我尝试过以下方法

当我从“v-navigation-drawer”中删除“position-sticky”类时,即使页脚可见,顶部的导航区域也不会向上移动。但是,这样做时,导航会水平延伸到页脚边界之外,如下图所示:

我可能无法用英语很好地解释它,但作为布局https://pro-bravia.sony.net/en/guides/ https://pro-bravia.sony.net/en/guides/我希望它就像我向下滚动到该网站一样

在我目前正在开发的应用程序中,如果我使用以下 v-navigation-drawer,导航的高度将减半。

<client-only>
    <v-navigation-drawer
      permanent
      class="position-sticky"
      :style="{ maxHeight, minWidth }"
      style="
        height: fit-content;
        margin-top: 64px;
      "
      width="250"
    >
      <v-row justify="center">
        <v-expansion-panels :modelValue="panel" :multiple="true">
          <v-expansion-panel
            v-for="(item, i) in matchedNavObject.children"
            :key="i"
          >
            <v-expansion-panel-title>{{ item.title }}</v-expansion-panel-title>

            <v-expansion-panel-text
              v-for="(navItem, j) in item.children"
              :key="j"
            >
              <nuxt-link
                :to="`${baseUrl}${navItem._path}`"
                class="text-decoration-none"
                :class="{
                  active: `${navItem._path}/` === route.path,
                }"
                >{{ navItem.title }}</nuxt-link
              >
            </v-expansion-panel-text>
          </v-expansion-panel>
        </v-expansion-panels>
      </v-row>
    </v-navigation-drawer>
  </client-only>

您可以通过简单地降低导航栏的高度来做到这一点。 Vuetify 默认是height: calc(100% - 64px);,但您可以覆盖它以适应内容:

<v-navigation-drawer
  class="position-sticky"
  style="max-height: calc(100vh - 64px); height: fit-content;"
>

请注意,当导航栏内容占据的高度超过窗口高度减去页眉和页脚高度时,这仍然会滚动。您可以通过为页脚保留空间来避免这种情况(即设置max-height: calc(100vh - 128px)在导航抽屉上),但是即使页脚不可见,该空间也不会被使用。

最后,如果导航超出可用高度并且主要内容占用的空间小于该高度,则导航栏将在顶部被切断,所以我会添加一个margin-top: 64px到导航抽屉,只是为了安全起见。

这里有一个操场 https://play.vuetifyjs.com/#eNq1VcFu2zAM/RXCl3RYZSdpsYOXFt1tl31B3YNiy4lWWxIkxU0Q+N9HWXZiOUW6YtgliMgnPj5SpJ+P0Q+l4mbHojRaWVarilr2mAmAVcEb4MVDFlGlsqizobUheOwPw5GsqX7cMlowvUrOlhPIRcoragwGK0hZsT24HzInC7KYz0/B+4iCNnxDLZeCFJq+MX32AqylRhoMpLNobFdM11QwYcfGgVRRsgAlDe+CGsvz10N43dhDxRA5tgHUdE+2jG+2NoWcVvkNZttsgcC3e7X/8j0ED8CSW5JLYTGXCaKmesMFsVKlXYTAPeYe1cOXL4wzJOtrkcJS7cHIiheguHidikgH+HHIEAuM/fnZneArzNR+1oa3ggTAXQC8kYnQjL2ybG9JyVlVhC6AhtSyYFUsdvW6a9iYdZoj1oYLxCzda5i6jGUKfffv+exBOWme5NJd0TWrPDf0Pen7BDfYwemFZKL7cwJ7gusK/4++T2tbJfiqxmOHc3sxd+gPBrOmXJxmar0hG80OoCoSTjDArw7nU7r+ki/fZlDE9x/nea4xh7WWb5gv1a9MkOXVVzwU6eZ4DFja1pXrg+I47eeNFgCwMqWUlunzcsL2P3qbu+v/DRvUb0i/Y/s4q2S0evFocs2VBcPszgN5raS2cATNSmih1LKGGW7tmXOiGGMnhXtwSLeu5p0yDwnm3iNw4BCwSjwjckW3kSdDxSr+baTAL8PRxch6h8miFDqLs2ES7pxFW2uVSZMkLwRew8HgjY4Fs4lQdfKEsETvhOU1I4Wsn+7iu/ge1Rs7NsfM1F1HDdMYJItuRzSWl7i0P6TqkR3DYukpehvBcTGO4yJ2goQN00QzgQ10k/Z3kibXxrImrgtpjr3NRIsFr3Brm0mtc9PV+XlI8t80d9FcqBfH2N5GXaJI7W9EL38AtJVdXQ==

这是另一个操场 https://play.vuetifyjs.com/#eNqlVc2O2jAQfpVRLoA2Tvan7YEC2r21h157WVaVCQa8JI5lGxYU5d07thPiBKStVA4knhnPfN/85bWKXqRMjgcWTaOZYYXMqWGLpQCYHQmV0r22B7KiarFjdM3ULO0kjcmaHyHLqdbzZbQmm5ydwP6Re/JAHu7vl1Fj6LwJeuRbangpyFrRD6ZaHcCqVBgAnahl1EklUwUVTJhO1AaTlDyALDV37rTh2f4cXtXmnDO06yQABT2RHePbnZlCRvNsjAiPOyDw7Ys8Tb6Hpq3ZhhuSlcIghp6+oGrLBTGlnLrbgbKLeeHu2LOTpEJbtPhkuYZpUa5Z/pvmBwvUCZcRSg+54dKBN+rAghTedgRHsilt6sYcaxkDnwAXgLn+iUdtPe7ZGdV84OmWL2K4ydmiqsD6StwJ6toW/rblUnzukp2C+vnfBXIDM4Z3h9pFzXY8Xysm+sWzv4bJ+1Az4AWABBrPFw4DnLcYIdB+rq+NwpJea3XX7ai8avcgW5ingiLhtp1XW7JV7AwyJ+HQAPxyVr4Dg9h27qZtj1eXpvZ2P9wR7mAkT6MaOyCIslLlB+Khas8EeRy0RHMfxlXVc1XXOB8hcwzfo2q5tCshUCLLTVkaprr5NhjSy+w9/+ZXj18u+D5Lg52ER50pLg1oZg5+NfFClspABYptoIaNKgsY4TobWSUC12aQibm1tNPuSHgLrA7usZ7BY8/AD5fX2EEMVFtm3HChdpwzsTW7GCTa8dME5g33F6XoObHYxhV4I6hjGP9xEzpfwJjf3cVIwjXotLmPReNQT/o421gWiXfeAhh/jWFkhwZGk6SgslFjiqzMBnFL4TJS6ORy9QmBdAOCzQLOajSZeEVTcPfAv1nq64D0ojjyJcC6y+RdlwI/JJW1wy3jFLh2puAkVoalsedltDNG6mmaZmuB13D58aNKBDOpkEX6jGapOgjDC0bWZfH8lDwlX7CbtAnFCdOF62LNFDpZRnEQxvANfgU+DdVYuggPjz5EIyM5XWkb48p3igGPTBFMI7Yyfrz+kdLgWkhroLqiZqPj4qox4TkXez3IdaZdnl9bkP/H2Xmzrt5sxDqOHFAM7W9Eb38BMt2VPA==导航栏中带有扩展面板

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

顶部导航已隐藏 的相关文章

  • 茉莉花节点没有输出

    我是 JavaScript Node js 和 jasmine 的新手 我正在尝试运行 Node Craftsman Book 一书中的测试 FilesizeWatcher 我创建了 package json 文件并运行 npm insta
  • 如何制作像Stackoverflow一样的可折叠评论框

    我正在构建一个网站 并且有一个状态更新列表 我希望允许用户为列表中的每个项目撰写评论 但是我正在尝试实现一个类似于堆栈溢出工作方式的用户界面 特别是可折叠的评论表单 列表 用户在其中单击对列表中的特定状态更新添加评论 并且在列表中的该项目下
  • 一个 Next.js 路由中的两个不同子域

    我想使用构建一个新平台Next js https nextjs org React js https reactjs org and 反应路由器 https reacttraining com react router web guides
  • 区分单击与 mousedown/mouseup

    我已经阅读了有关这种情况的 stackoverflow 上的几个答案 但没有一个解决方案有效 我尝试根据用户是否单击某个元素或使用 jQuery 将鼠标按住该元素来执行不同的操作 有可能做到这一点吗 onMouseDown 将在按下左侧或右
  • 代码点火器 JSON

    你好 我使用 codeigniter 然后我从控制器中的数据库中回显输出 然后在我的视图文件中执行以下操作 但它没有显示任何内容 S 我的模型文件 function forumList this gt db gt select oversk
  • JSDoc:如何在生成的文档中包含自定义 css 文件模板?

    JS文档docs https jsdoc app about configuring default template html say 将图像目录复制到输出目录 复制全部 将 myproject static 中的静态文件复制到输出目录
  • React:React 如何确保在浏览器有机会绘制之后调用 useEffect?

    useLayoutEffect 的文档说 useLayoutEffect 内计划的更新将被刷新 在浏览器有机会绘制之前同步进行 useEffect 的文档说 与 componentDidMount 和 componentDidUpdate
  • 为什么我的 onclick 事件自动触发

    加载页面时最初显示 Hello World 我希望它仅在单击按钮后显示 我知道我可以通过向按钮添加内联事件侦听器来做到这一点 我可以只用脚本编写所有这些代码吗
  • 有没有办法在 TypeScript 2+ 中全局添加类型定义?

    我有一堆简单的 ts files 不是项目 即独立的 ts 脚本 他们使用一些 Node js 功能 TypeScript 和节点类型定义通过安装 npm install g typescript npm install g types n
  • 页面点击其他路径后 $timeout 继续运行

    我在用yo angular fullstack生成器来构建我的网站 当用户注册该网站时 它将发送一封带有链接的激活电子邮件 当用户点击该链接时 会显示激活成功并超时进入主页 但是 当超时未结束 用户点击页面中的任何其他链接时 会跳转到其他页
  • django ajax post 403被禁止

    使用 django 1 4 当我尝试从我的 javascript 做我的 django 服务器上的帖子时 我收到 403 错误 我的 get 工作正常 尽管问题仅出在帖子上 也尝试过 csrf exempt但没有运气 更新 我现在可以发布我
  • 对数字和字母元素的数组进行排序(自然排序)

    假设我有一个数组 var arr 1 5 ahsldk 10 55 3 2 7 8 1 2 75 abc huds 我尝试对其进行排序 我得到了类似的东西 1 1 10 2 2 3 5 55 7 75 8 abc ahsldk huds 注
  • 在外部单击时关闭弹出 div

    我有一个弹出 div 仅在单击特定按钮时显示 单击同一按钮时它甚至会隐藏 我的问题是 我还想在单击外部任何地方时隐藏 div 我无法这样做 因为弹出 div 位于主包装类内部 并且无法通过在包装类上使用 click 事件并使其隐藏来做到这一
  • Google 地图 v3 中标准缩放控件的样式

    有没有一种简单的方法可以在 Google Maps JavaScript API v3 中设置缩放控件的样式 我想要的只是改变标准图像 http maps gstatic com intl en ALL mapfiles mapcontro
  • 优化正则表达式以过滤数千个 HTML 选择选项

    背景 我开发了一个基于 jQuery 的穿梭小部件 https stackoverflow com a 13557000 59087对于 HTMLselect元素 因为我找不到一个经过最低限度编码并提供正则表达式过滤器来补偿的元素变音符号
  • Tween JS 基础知识之三个 JS 立方体

    我是 Tween JS 的新手 尝试使用 Tween 制作一个向右移动的简单动画 下面是我在 init 函数中的代码 我使用的是三个 JS var geometry new THREE CylinderGeometry 200 200 20
  • Javascript - 如何计算数字的平方?

    使用 JavaScript 函数 function squareIt number return number number 当给定数字 4294967296 时 函数返回 18446744073709552000 每个人都知道真正的答案是
  • 使用 dnode 从服务器向客户端发送消息

    几个月前 我发现了 nowjs 和 dnode 并最终使用了 nowjs 并且https github com Flotype nowclient https github com Flotype nowclient 用于客户端 服务器双向
  • 使用 JavaScript 从 URL 变量读取来加载不同的 CSS 样式表

    我试图在我的 WordPress 博客上使用两个不同的样式表 以便在通过 Web 访问页面时使用一个样式表 而在通过我们的 iOS 应用程序访问博客内容时使用另一个样式表 现在 我们将 app true 附加到来自 iOS 应用程序的 UR
  • html5 canvas 使用图像作为蒙版

    是否可以使用具有形状的图像作为整个画布或画布内图像的蒙版 我想将图像放置在画布中 并在图像上添加蒙版 然后将其另存为新图像 您可以使用 source in globalCompositeOperation 将黑白图像用作蒙版 首先 将蒙版图

随机推荐

  • 如何存储网络应用程序的配置设置?

    我有一些站点元数据我希望可以更改 例如 在我的应用程序中 如果系统管理员不想使用站点的 库存 部分 他 她可以将其关闭 并且它将从主站点消失 所以我在想 也许我可以在数据库中创建一个名为 元 的表 并在那里插入值 或元组 然后 如果模块被关
  • 将“@daily-co/daily-js”导入 SvelteKit 应用程序会引发“全局未定义”错误

    我尝试过的 我尝试通过解决它if browser 进一步来说 if browser let DailyIframe await import daily co daily js 在load函数里面
  • 如何读写MP3到数据库

    如何从Sql数据库读取MP3 在 sql 中 我已将文件存储为二进制格式 现在我想检索存储在 sql 中的 Mp3 文件并显示在我的 aspx 页面中 如何 请帮忙 以最简单的形式 这就是您获取原始字节的方式 在不知道您想要它做什么的情况下
  • 分段错误:11 - Xcode 6.3

    无法存档 我的应用程序在模拟器和多个设备上运行良好 Xcode 6 3 2 基于 swift 但是当我尝试存档它时出现错误Command failed due to signal Segmentation fault 11 其他人面临同样的
  • 视图索引 (Oracle)

    假设我有两张桌子 tab a and tab b 我创建了一个如下所示的视图 create view join tabs as select col x as col z from tab a union select col y as c
  • Objective C 中什么是非空?

    有人可以详细说明为什么吗nonnulliOS 9 中引入 例如 NSArray method instancetype array is now instancetype nonnull array 参考 https developer a
  • C 的 std::vector 替代品 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想知道是否有替代方案C 中的 std 向量 我发现这个实现 http codingrecipes com implementation
  • (Flutter) 具有有限内容的无限滚动 `ListView.builder`

    1 问题 我该如何做我的ListView builder能够滚动到顶部和底部的空白区域吗 例如 我有一个自定义小部件列表 我希望用户能够通过滚动到列表中最上面的卡片 位于屏幕顶部 更接近他的拇指 而Flutter用空背景渲染顶部空间 2 到
  • 使用 MVC Web API 发布对象数组

    我有一个基本的后期操作 适用于单个对象RecordIem 我想做的是执行相同的操作 但通过使用相同格式发布一组请求来批量执行 例如 public HttpResponseMessage Post RecordItem request var
  • Python Multiprocessing.Pool 惰性迭代

    我想知道 python 的 Multiprocessing Pool 类与 map imap 和 map async 一起使用的方式 我的特殊问题是 我想映射一个创建内存密集型对象的迭代器 并且不希望所有这些对象同时生成到内存中 我想看看各
  • 用于查找时间跨度的最大平均值的 LINQ 查询

    我有一组数据有两个点 瓦特 和时间戳 每个数据点间隔 1 秒 所以它看起来像这样 0 01 100 0 02 110 0 03 133 0 04 280 该数据集长达几个小时 我想编写一个查询 在其中可以找到不同时间段 5 秒 1 分钟 5
  • 如何在 Android Retrofit 中忽略 JSON 元素

    我正在开发一个 Android 应用程序 它使用 Android Retrofit 发送 JSON 它将 POJO 类转换为 JSON 它工作正常 但我需要在发送 JSON 时忽略 POJO 类中的一个元素 有谁知道 Android Ret
  • 在 linux ubuntu 中使用 CPAN 时,我应该使用 sudo / 作为 root 或作为我的默认用户运行它

    我收到这样的错误 Running make install Prepending blib arch and blib lib of 17 build dirs to PERL5LIB for install ERROR Can t cre
  • 将 Markdown 转换为 HTML 的正则表达式

    如何编写正则表达式将 mark 转换为 HTML 例如 您可以输入以下内容 This would be italicized text and this would be bold text 然后需要将其转换为 This would be
  • TomEE 8 服务器仅限于 Netbeans 15 中的 Java EE7 Web 应用程序

    所以我从这里安装了最新的 Apache TomEE 8 服务器 https tomee apache org download html https tomee apache org download html TomEE 服务器运行良好
  • 如何使用 OpenCV 和 Python 使用遮罩(或透明度)在图像中查找模板?

    假设我们正在寻找这个模板 我们模板的角是透明的 因此背景会有所不同 如下所示 假设我们可以在模板中使用以下掩码 找到它会很容易 我尝试过的 我努力了matchTemplate但它不支持蒙版 据我所知 并且在模板中使用 alpha 通道 透明
  • Angular:从外部访问 ng-content 嵌套组件方法

    我有两个共享组件 我希望父组件调用其子组件中的方法 共享组件 1 父组件 Component selector parent template div div div div
  • 在 ffmpeg 中将 2 个音频文件与一个视频合并

    我正在尝试合并 2 个音频文件 wav带视频文件 mp4 产生输出video mp4使用 ffmpeg 进行扩展Windows CMD 这是我尝试过的 ffmpeg i V MP4 i A1 WAV i A2 WAV map 0 v map
  • 在 C# 中检测多个同时按键

    我希望通过检测某些无法键入的组合键 转义序列 的按键来模拟 C 中的串行通信的超级终端功能 例如 Ctrl C Ctrl Z 等 我知道这些键有其 ASCII等价物 并且可以按原样传输 但我在检测多个按键时遇到问题 我提供一些代码作为参考
  • 顶部导航已隐藏

    当我滚动到页面底部并看到页脚时 我不希望隐藏导航顶部 下面是滚动之前的状态 Below is a screenshot when scrolling down to the page 这是代码