2.5.0.beta6 组件定位的影响

这不算是一个严重的问题,但我想提醒一下,如果有人在他们的主题中使用了自定义定位,最近的更新可能会对他们产生不利影响。

最近的更新似乎破坏了 @smrtey@pacharanero 用于在宽屏模式下显示 Discourse 的代码:

导航栏(在主题内)大部分情况下处于正确的位置(宽屏模式)。但在向上滚动时,它会默认恢复到正常位置,随后又翻转回去。

此外,它还无意中对由 @Taylor_Troxtel 开发的“大标题 - 小标题”主题产生了负面影响:

在我的情况下,这导致横幅遮挡了顶部的按钮(分类、最新、新建)。

我暂时已从我的网站中移除了这些内容,但在更新之前,我想提醒其他人注意这一点。

我们的标题栏现在在 CSS 中使用了 position: sticky,因此这些主题可能受到了该变更的影响。如果您想寻找切入点,Versatile BannerDiscourse Category Banners 均已更新以修复相关问题。

感谢 @Alec 提醒我这件事。最近自 2.5.0.beta6 以来,我注意到一些异常现象:在我运行的某些 Discourse 实例中,为了与站点设计更好地匹配,我将标题栏调高并添加了一些内边距以将 #main-outlet 向下推移。但在 2.5.0.beta6 之后,这些额外的内边距就不再需要了。

我有空时会研究需要更新哪些内容来修复这个问题。我有两个实例使用了这个 TC,其中一个看起来有点奇怪,另一个则正常。当然,如果任何人有时间,欢迎提交修复的 PR。

感谢 @justin 提供的修复方向。

这并没有影响我网站上的宽屏显示,因为我的网站还有很多其他未包含在您所链接组件中的内容。但它确实破坏了我对桌面视图的自定义,导致无法适配移动屏幕,从而让用户无法在移动设备上使用嵌入的回复/回复内容。不知何故,当宽度小于 768px 时,position: sticky 并未生效。我不清楚为什么 sticky 会失效,因此最终不得不采用以下方案:

@media (max-width: 767px) {
   .d-header-wrap {
      position: fixed;
      top: 0;
      width: 100%;
   }
   #main-outlet {
       margin-top: 48px;
   }
}

你好 :wave:。只是想告知您,我稍晚些时候应该就能为这个组件提供修复方案!

编辑:我刚刚推送了该组件的更新。请通过您的管理后台进行更新。