我正在使用下面的代码在Angular 2中逐渐隐藏一个DIV。这在Chrome和Microsoft Edge中都能很好地工作。但同样的事情在Firefox中不起作用,DIV仍然可见。我需要添加或编辑任何东西才能在Firefox中工作吗?
animations: [
trigger('toggleDiv', [
state('false', style({})),
state('true', style({ maxHeight: 0, padding: 0, display: 'none',
overflow: 'hidden' })),
transition('* => *', animate('300ms ease')),
])
]
})
发布于 2019-10-25 02:04:01
确切的问题是padding: 0
,删除它的,动画将关闭并在火狐中再次工作。我不知道这种行为的确切细节,但似乎firefox和angular动画在某些样式(在这种情况下是填充)不能很好地工作。
将填充保持为0的一种解决方法是使用
padding-top: 0;
padding-right: 0
padding-bottom: 0;
padding-left: 0;
发布于 2018-08-01 03:00:46
根据docs的说法,6.0之前的版本需要为不支持natively support the web animation API的浏览器提供polyfill。要添加polyfill,请安装web-animations-js并在polyfills.js中添加以下内容
require('web-animations-js');
https://stackoverflow.com/questions/51620133
复制相似问题