html - Div 是立即扩展而不是随时间扩展?

标签 html css angular animation angular-material

我的 div 在点击我的触发器后立即展开,而不是随着时间的推移发生......这是为什么,我该如何解决?

html

<div class="card" #panel [ngClass]="{heightChange: panel.isExpanded}">
  <div class="header">
    <div class="itemName">Some text goes here</div>
    <mat-icon *ngIf="!panel.isExpanded" (click)="panel.isExpanded=true">edit</mat-icon>
    <mat-icon *ngIf="panel.isExpanded" (click)="panel.isExpanded=false">cancel</mat-icon>
  </div>
</div>

CSS

div.card {
  background: white;
  padding: 12px;
  justify-items: center;
  transition: all 0.5s;
}

mat-icon {
  cursor: pointer;
}

div.header {
  display: flex;
  justify-content: space-between;
}

.heightChange {
  height: 150px;
}

stackblitz

最佳答案

只需将 height 属性添加到您的 div.card 类中作为初始高度。

然后添加另一个名为 div.card.heightChange 的新高度类。 transition 仅适用于 height 而不是所有。

将您的 CSS 类更改为:

div.card {
  background: white;
  padding: 12px;
  height: 25px;
  justify-items: center;
  transition: height 0.5s;
}

div.card.heightChange {
  height: 150px;
}

这是一个 Working Sample StackBlitz供您引用。

关于html - Div 是立即扩展而不是随时间扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53636153/

相关文章:

angular - ivy 错误 - ngcc 编译器自上次 ngcc 构建以来已更改

html - CSS Firefox 与 Chrome 不一致的高度和位置输出

javascript - Angular CLI : Can't load CDN Scripts in HTML

html - 如何居中可变长度提交按钮?

javascript - Jquery 加载带有 chitika 广告的页面,破坏网站

css - z-index css弹出框和ie7

javascript - div 的 css 高度 100% 的问题

angular - 如何显示动态表单数组的 md-error 消息?

php - jquery:将参数传递给模态

html - 在页面加载时动画 css