11@import '../core/style/variables';
2+ @import '../core/style/vendor-prefixes';
23
34$mat-progress-bar-height: 5px !default;
45$mat-progress-bar-full-animation-duration: 2000ms !default;
@@ -11,8 +12,6 @@ $mat-progress-bar-piece-animation-duration: 250ms !default;
1112 height: $mat-progress-bar-height;
1213 overflow: hidden;
1314 position: relative;
14- // translateZ is added to force the mat-progress-bar into its own GPU layer.
15- transform: translateZ(0);
1615 transition: opacity $mat-progress-bar-piece-animation-duration linear;
1716 width: 100%;
1817
@@ -80,28 +79,38 @@ $mat-progress-bar-piece-animation-duration: 250ms !default;
8079 transition: none;
8180 }
8281 .mat-progress-bar-primary {
82+ // Avoids stacked animation tearing in Firefox >= 57.
83+ @include backface-visibility(hidden);
8384 animation: mat-progress-bar-primary-indeterminate-translate
8485 $mat-progress-bar-full-animation-duration infinite linear;
8586 left: -145.166611%;
8687 }
8788 .mat-progress-bar-primary.mat-progress-bar-fill::after {
89+ // Avoids stacked animation tearing in Firefox >= 57.
90+ @include backface-visibility(hidden);
8891 animation: mat-progress-bar-primary-indeterminate-scale
8992 $mat-progress-bar-full-animation-duration infinite linear;
9093 }
9194 .mat-progress-bar-secondary {
95+ // Avoids stacked animation tearing in Firefox >= 57.
96+ @include backface-visibility(hidden);
9297 animation: mat-progress-bar-secondary-indeterminate-translate
9398 $mat-progress-bar-full-animation-duration infinite linear;
9499 left: -54.888891%;
95100 display: block;
96101 }
97102 .mat-progress-bar-secondary.mat-progress-bar-fill::after {
103+ // Avoids stacked animation tearing in Firefox >= 57.
104+ @include backface-visibility(hidden);
98105 animation: mat-progress-bar-secondary-indeterminate-scale
99106 $mat-progress-bar-full-animation-duration infinite linear;
100107 }
101108 }
102109
103110 &[mode='buffer'] {
104111 .mat-progress-bar-background {
112+ // Avoids stacked animation tearing in Firefox >= 57.
113+ @include backface-visibility(hidden);
105114 animation: mat-progress-bar-background-scroll
106115 $mat-progress-bar-piece-animation-duration infinite linear;
107116 display: block;
0 commit comments