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

如何通过custom-msmbstyle.css实现页面滚动时高亮元素固定在顶部并避免与下方文本重叠?

实现滚动时章节标题固定在顶部(避免内容重叠)

Absolutely! 你完全可以通过修改custom-msmbstyle.css文件来实现这个需求,下面是针对性的代码和详细说明:

核心CSS代码

/* 固定章节标题到页面顶部 */
.section.level1 h1 {
  position: sticky;
  top: 0;
  /* 设置与页面主体一致的背景色,防止下方内容透显 */
  background-color: #fff;
  /* 提升层级,确保标题始终在其他内容上方 */
  z-index: 100;
  /* 可选:调整内边距让标题排版更舒适 */
  padding: 0.6em 0;
  /* 移除默认上边距,避免固定后出现多余空隙 */
  margin-top: 0;
}

/* 给标题后的首个内容块添加上边距,防止重叠 */
.section.level1 > p:first-of-type {
  margin-top: 1.2em;
}

代码作用详解

  • position: sticky:这是实现滚动固定的最佳方案,它让元素在滚动到视口顶部时自动固定,当滚动超出元素所在区域时又会恢复原位,相比position: fixed更贴合页面的布局逻辑。
  • top: 0:明确指定元素固定在视口的顶部位置。
  • background-color: #fff:必须设置这个属性,否则滚动时下方的文本、图片会透过透明的标题显示出来,破坏视觉效果。
  • z-index: 100:确保标题的层级高于页面其他内容,避免被视频、图片或其他元素遮挡。
  • 给首个段落添加margin-top:因为sticky元素固定后会脱离原本的文档流占位,下方内容会自动上移,通过添加上边距可以留出足够空间,避免和固定的标题重叠。

可选优化:避免导航栏被遮挡

如果顶部的章节下拉导航栏被固定的标题遮挡,可以给导航栏也设置更高的层级:

#TOC .navbar {
  z-index: 101;
}

将以上代码添加到你的custom-msmbstyle.css文件末尾,刷新页面后就能看到效果啦。

内容的提问来源于stack exchange,提问作者Eric Green

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 07:42:35