Angular 7动画在Webkit浏览器上导致z-index重叠问题

Jac*_*321 5 javascript css css-animations angular angular-animations

我在我的angular 7应用程序中添加了一些交错动画,以使元素在页面加载时进行动画处理。我在我的一个组件上遇到了这个奇怪的z-index问题。

动画代码是这样的:

@Component({
  selector: 'track-page',
  templateUrl: './track-page.component.html',
  styleUrls: ['./track-page.component.scss'],
  animations: [
    trigger('fadeIn', [
      transition(':enter', [
        query('*', style({opacity: 0})),
        query('*', [
            animate('500ms', style({opacity: 1}))
        ]),
      ])
    ]),
    trigger('swipeUp', [
      transition('void => *', [
        query('*', style({opacity: 0, transform: 'translate3d(0,20%,0)'})),
        query('*', stagger(10, [
          animate('700ms ease-in', keyframes([
            style({opacity: 1, transform: 'none', offset: 1})
          ]))
        ]))
      ])
    ])
  ]
})
Run Code Online (Sandbox Code Playgroud)

此代码仅在webkit浏览器上导致以下结果:

共享组件应该出现在所有其他元素的前面,但是节拍器图标出现在顶部。我尝试在共享组件上设置最大z-index,但是没有运气。

Jac*_*321 2

我找到了一个解决方案,我尝试将translate3d更改为translateY,但没有什么区别。因此,我设置transform: translate3d(0, 0, 1px);了原本具有最高 z-index 的共享组件,现在共享组件可以在所有浏览器上正确覆盖所有其他元素。