javascript - Angular 8 应用程序,当使用片段与标题重叠时

标签 javascript css angular typescript

我有一个链接,通过单击链接,我想滚动到页面底部的片段。当我点击链接时,片段正在工作,但片段被标题组件重叠。请看图片:

下面是我的 app.component.html 中的代码:

<div class="layout-wrapper">
  <header>
  <app-header></app-header>
</header>  
  <main id="layout-content" [ngClass]="{ active: menuActive }">
    <div>
      <router-outlet></router-outlet>
    </div>
  </main>
  <footer>
  <app-footer></app-footer>
  </footer>
</div>

在主标签上,我有一个 css 样式,顶部有填充

#layout-content {
    margin-left: 0;
    padding-top: 120px;
    margin-right: 0;
  }

但是,当我点击片段链接时,它会将它带到顶部并与标题重叠。

我的链接和片段组件代码:

<a [routerLink]="['/proposal']" fragment="dcn">{{ dcn }}</a>

<section id="dcn">
Some other html here
</section>

为什么不应用填充?如何应用填充?

实际: actual

预期: expected

最佳答案

在绞尽脑汁想出一个使用 css 的解决方案之后,我查看了 Angular 路由 api 并找到了解决方案,它正在使用

    scrollOffset: [0, 135] 

在我的 app-routing.module.ts 文件的路由选项中。现在,片段从 135px 开始,这是我的标题的长度。

关于javascript - Angular 8 应用程序,当使用片段与标题重叠时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57978281/

相关文章:

javascript - 有没有一种 javascript 方法来检查浏览器是否 native 支持 MP3?

html - 按钮链接格式 - 居中和匹配宽度

angular - ng-packagr 给出没有为外部模块提供名称

javascript - 检查待处理的 AJAX 请求或 HTTP GET/POST 请求

javascript - 什么时候可以从 Javascript 输出 HTML 代码?

html - 如何修复我的布局,以便我的导航栏在链接到所需部分后不隐藏某些内容

angular - Angular 5 项目中的错误 - "An implementation cannot be declared in ambient contexts"

javascript - 如何取消 Angular 2 中的 Promise.all()?

javascript - 如何用javascript在div上播放动画

html - 如何将 Photoshop 风格的颜色曲线滤镜应用到 HTML 标签?