You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular中如何让table-of-contents组件滚动时固定在页面右上角

解决方案

你现有的.tableOfContentContainer已经使用了position: fixed定位,之所以仅在向下滚动时可见、向上滚动时消失,核心是两个配置缺失:一是没有明确设置top属性,固定定位的参考位置不明确,二是z-index层级不足,容易被页面顶部导航、PDF查看器等其他元素遮挡。

仅需要修改CSS代码即可实现需求,无需调整TS和HTML文件:

修改.tableOfContentContainer样式

将原有样式替换为以下内容,可根据你的页面实际效果调整数值:

.tableOfContentContainer {
    right: 100px;
    position: fixed;
    top: 20px; /* 调整为你需要的距离页面顶部的距离,如果页面有固定头部,可设置为头部高度避免重叠 */
    z-index: 9999; /* 足够高的层级,保证目录始终在所有页面元素上方显示 */
    padding-top: 1em;
    /* 以下是可选美化配置,不需要可删除 */
    background: #ffffff;
    padding: 12px 16px;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

可选:小屏幕适配

如果需要避免小屏幕下目录遮挡PDF内容,可追加媒体查询样式:

@media (max-width: 1200px) {
  .tableOfContentContainer {
    right: 16px;
    max-width: 200px;
  }
}

修改完成后目录会始终固定在页面右上角,无论上下滚动都保持可见。

内容的提问来源于stack exchange,提问作者Reem Al-Assaf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 18:15:03