angular - 具有双倍滚动内容的 Angular Material Sidenav
问题描述
对于基于角度材料的项目,我尝试根据用户的设备(台式机或手机)使用具有不同视图可能性的sidenav组件。到目前为止,它有效,但存在一些问题。即,一旦内容变长,内容就会翻倍滚动。
HTML结构:
<mat-toolbar color="primary">
<button mat-icon-button *ngIf="...">
<mat-icon>menu</mat-icon>
</button>
Toolbar
</mat-toolbar>
<mat-sidenav-container>
<mat-sidenav #sidenav ...>
<mat-nav-list>
<a mat-list-item (click)="closeSidenav()" routerLink="/item1">Item 1</a>
</mat-nav-list>
</mat-sidenav>
<mat-sidenav-content class="content">
<router-outlet></router-outlet>
<footer>© 2020 Lorem impsum. Dolor sit amet.</footer>
</mat-sidenav-content>
</mat-sidenav-container>
使用诸如overflow: hidden
在mat-sidenav-content
元素上的 CSS 操作会切断不可见的内容,并将其应用于mat-sidenav-container
元素根本不会影响它。
这是一个StackBlitz 示例
依赖版本:
- @角:9.1.12
- @角/材料:9.2.4
那么,我做错了什么?有谁知道如何解决这一问题?或者在角度项目中实现sidenav +工具栏的干净/更好的方式?任何帮助,将不胜感激!
解决方案
工具栏坚持 md-content 而不是 body -> 内部滚动条,并且像角度材料的网站一样,它们删除了主滚动并使用:
body { overflow: hidden; max-width: 100%; max-height: 100%; }
并只保留内部的。
推荐阅读
- acumatica - How can I invoke File Synchonization Action via code (SM202530)
- r - 数据处理脚本文档
- grafana-loki - 如何在 Promtail 中解析嵌套的 json
- sql - 选择具有不同起始位置的子字符串
- python - 每当我在 python (abjad for LilyPond) 中执行 abjad.show() 时都会出现错误
- r - 使用 RowSum 定义基于不同类别的阈值
- python - 用于多元时间序列的 Pytorch 自定义数据集类和数据加载器
- reactjs - Create-react-libary 编译到 /dist/src 而不是 /dist
- database - TDengine数据库时区设置相关问题
- java - HarmonyOS 中的 invalidateSelf(Android) 有什么替代方法吗?