所以我一直在try 在我的Web应用程序开发中采用material 手风琴.

但是,随着内容的增长,标题的大小也会随之扩大,这会带来一些麻烦.

我的标题应该有相当多的行来给出总结,而不仅仅是1行.

如果我硬编码material 标题高度,会导致动画乱七八糟.

下面是一个示例代码

<mat-accordion [displayMode]="displayMode" [multi]="multi" class="mat-expansion-demo-width">
                <mat-expansion-panel #panel1 [hideToggle]="hideToggle">
                    <mat-expansion-panel-header>Section 1</mat-expansion-panel-header>
                    <p>This is the content text that makes sense here.</p>
                </mat-expansion-panel>
            </mat-accordion>
::ng-deep .mat-expansion-panel-header
{
    height: 190px !important;
}

如果我在上面做,高度会被设置,但是展开和折叠的动画会变得很奇怪.

我该怎么做?

推荐答案

你不必用::ng-deep.你可以在mat-expansion-panel-header上使用[collapsedHeight][expandedHeight].

<mat-accordion [displayMode]="displayMode" [multi]="multi" class="mat-expansion-demo-width">
    <mat-expansion-panel #panel1 [hideToggle]="hideToggle">
        <mat-expansion-panel-header [collapsedHeight]="'190px'" [expandedHeight]="'190px'">
            Section 1
        </mat-expansion-panel-header>
        <p>This is the content text that makes sense here.</p>
    </mat-expansion-panel>
</mat-accordion>

链接到StackBlitz Demo.

Angular相关问答推荐

将kendo—colorpicker的kendo弹出窗口附加到组件''

布局之间的Angular 变化检测需要重新加载

带有两个注入服务的函数式解析器(Angular 15)

带有搜索功能的CDK-VIRTUAL-SCROLL-VIEPORT不显示该值

如何用ANGLE指令覆盖Html元素的数据绑定属性

将输入传递到组合Angular指令

如何通过innerHtml在模板中显示动态插入的动感图标?

Angular 17:延迟加载带参数的独立组件?

如何在AngularJs中剪断细绳

无法在Mat-SideNav中绑定模式

Ngrx Select 器返回部分对象

如何在Angular功能路由保护中取消订阅RxJs主题

根据环境变量动态加载Angular templateUrl

在Angular中扩展多个类

Angular6:RxJS switchMap 运算符未按预期工作

Angular 2 通过 [class.className] 绑定添加多个类

如何在 Angular2 中的所有请求的请求标头中发送Cookie?

Angular 5 测试:如何获取对子组件的引用

如何在 Angular 5 react式表单输入中使用管道

Angular 2:如何编写 for 循环,而不是 foreach 循环