angular - 无主体的垫子扩展板
问题描述
Angular 6 ...我有一个手风琴组合多个垫子扩展面板。
面板代表菜单选项,当展开时,具有子菜单选项的导航列表。
一些菜单选项(即一些垫子扩展面板)没有子菜单。它们可以通过单击标题自行选择,并且不应打开任何内容。
我已经排除了使用 *ngIf 写出任何面板内容(因此在标题之后没有导航列表元素),但是仍然插入了一个正文并单击标题,打开了一个大约 10 像素的空正文。
如何使面板标题可点击,但不显示任何正文内容?
谢谢
解决方案
您可能不应该将扩展面板用作菜单,因为它们并非设计为以这种方式工作 - 正如您所经历的那样。
除了禁用扩展面板之外,您无法有效地关闭扩展,但这也会使标题看起来也被禁用。如果您强制您的标题内容看起来不被禁用,那么您可以使用:
<mat-expansion-panel disabled>
否则,您可以尝试以下技巧:
伪装扩展面板的外观
<div class="mat-expansion-panel" style="height: 48px; border-radius: 0;">
<div class="mat-expansion-panel-header" style="height: 48px;">
<mat-panel-title>
Title
</mat-panel-title>
<mat-panel-description>
Description
</mat-panel-description>
</div>
</div>
强制展开面板看起来像未展开(或可展开):
<mat-expansion-panel class="no-body">
<mat-expansion-panel-header class="no-body">
<mat-panel-title>
Title
</mat-panel-title>
<mat-panel-description>
Description
</mat-panel-description>
</mat-expansion-panel-header>
</mat-expansion-panel>
.no-body {
max-height: 48px;
}
.no-body.mat-expansion-panel-header >>> .mat-expansion-indicator {
display: none;
}
推荐阅读
- c# - 测试 WCF - 没有端点监听
- byte-buddy - byte-buddy Advice 或 Intercept 构造函数调用
- android - 将 GCC 编译为静态工具链和插件是否支持互斥?
- php - 根据在另一个数组中排序的特定值的顺序移动数组条目
- r - 跨行的 x 最小值的平均值
- angular - Nebular / Ngx-Admin 如何刷新令牌?
- sql - DBMS 日期命令
- reactjs - 如何在运行 webpack/react 应用程序时欺骗时间(仅用于测试)?
- c# - 实现抓取对象方法,但如果手包含刚体,则 Physics.OverlapSphere() 返回 null
- jsf - JSF:具有范围类型注释“@sessionscoped”的 webbeans 上下文不存在