@material/linear-progress
Version:
The Material Components for the web linear progress indicator component
536 lines (530 loc) • 22.6 kB
CSS
/**
* @license
* Copyright Google LLC All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/material-components/material-components-web/blob/master/LICENSE
*/
@-webkit-keyframes mdc-linear-progress-primary-indeterminate-translate {
0% {
-webkit-transform: translateX(0);
transform: translateX(0);
}
20% {
-webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
-webkit-transform: translateX(0);
transform: translateX(0);
}
59.15% {
-webkit-animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
-webkit-transform: translateX(83.67142%);
transform: translateX(83.67142%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-half, 83.67142%));
transform: translateX(var(--mdc-linear-progress-primary-half, 83.67142%));
}
100% {
-webkit-transform: translateX(200.611057%);
transform: translateX(200.611057%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-full, 200.611057%));
transform: translateX(var(--mdc-linear-progress-primary-full, 200.611057%));
}
}
@keyframes mdc-linear-progress-primary-indeterminate-translate {
0% {
-webkit-transform: translateX(0);
transform: translateX(0);
}
20% {
-webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
-webkit-transform: translateX(0);
transform: translateX(0);
}
59.15% {
-webkit-animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
-webkit-transform: translateX(83.67142%);
transform: translateX(83.67142%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-half, 83.67142%));
transform: translateX(var(--mdc-linear-progress-primary-half, 83.67142%));
}
100% {
-webkit-transform: translateX(200.611057%);
transform: translateX(200.611057%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-full, 200.611057%));
transform: translateX(var(--mdc-linear-progress-primary-full, 200.611057%));
}
}
@-webkit-keyframes mdc-linear-progress-primary-indeterminate-scale {
0% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
36.65% {
-webkit-animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);
animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
69.15% {
-webkit-animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
-webkit-transform: scaleX(0.661479);
transform: scaleX(0.661479);
}
100% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
}
@keyframes mdc-linear-progress-primary-indeterminate-scale {
0% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
36.65% {
-webkit-animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);
animation-timing-function: cubic-bezier(0.334731, 0.12482, 0.785844, 1);
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
69.15% {
-webkit-animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
-webkit-transform: scaleX(0.661479);
transform: scaleX(0.661479);
}
100% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
}
@-webkit-keyframes mdc-linear-progress-secondary-indeterminate-translate {
0% {
-webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
-webkit-transform: translateX(0);
transform: translateX(0);
}
25% {
-webkit-animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
-webkit-transform: translateX(37.651913%);
transform: translateX(37.651913%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-quarter, 37.651913%));
transform: translateX(var(--mdc-linear-progress-secondary-quarter, 37.651913%));
}
48.35% {
-webkit-animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
-webkit-transform: translateX(84.386165%);
transform: translateX(84.386165%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-half, 84.386165%));
transform: translateX(var(--mdc-linear-progress-secondary-half, 84.386165%));
}
100% {
-webkit-transform: translateX(160.277782%);
transform: translateX(160.277782%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-full, 160.277782%));
transform: translateX(var(--mdc-linear-progress-secondary-full, 160.277782%));
}
}
@keyframes mdc-linear-progress-secondary-indeterminate-translate {
0% {
-webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
-webkit-transform: translateX(0);
transform: translateX(0);
}
25% {
-webkit-animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
-webkit-transform: translateX(37.651913%);
transform: translateX(37.651913%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-quarter, 37.651913%));
transform: translateX(var(--mdc-linear-progress-secondary-quarter, 37.651913%));
}
48.35% {
-webkit-animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
-webkit-transform: translateX(84.386165%);
transform: translateX(84.386165%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-half, 84.386165%));
transform: translateX(var(--mdc-linear-progress-secondary-half, 84.386165%));
}
100% {
-webkit-transform: translateX(160.277782%);
transform: translateX(160.277782%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-full, 160.277782%));
transform: translateX(var(--mdc-linear-progress-secondary-full, 160.277782%));
}
}
@-webkit-keyframes mdc-linear-progress-secondary-indeterminate-scale {
0% {
-webkit-animation-timing-function: cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);
animation-timing-function: cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
19.15% {
-webkit-animation-timing-function: cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);
animation-timing-function: cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);
-webkit-transform: scaleX(0.457104);
transform: scaleX(0.457104);
}
44.15% {
-webkit-animation-timing-function: cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);
animation-timing-function: cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);
-webkit-transform: scaleX(0.72796);
transform: scaleX(0.72796);
}
100% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
}
@keyframes mdc-linear-progress-secondary-indeterminate-scale {
0% {
-webkit-animation-timing-function: cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);
animation-timing-function: cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
19.15% {
-webkit-animation-timing-function: cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);
animation-timing-function: cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);
-webkit-transform: scaleX(0.457104);
transform: scaleX(0.457104);
}
44.15% {
-webkit-animation-timing-function: cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);
animation-timing-function: cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);
-webkit-transform: scaleX(0.72796);
transform: scaleX(0.72796);
}
100% {
-webkit-transform: scaleX(0.08);
transform: scaleX(0.08);
}
}
@-webkit-keyframes mdc-linear-progress-buffering {
from {
-webkit-transform: rotate(180deg) translateX(-10px);
transform: rotate(180deg) translateX(-10px);
}
}
@keyframes mdc-linear-progress-buffering {
from {
-webkit-transform: rotate(180deg) translateX(-10px);
transform: rotate(180deg) translateX(-10px);
}
}
@-webkit-keyframes mdc-linear-progress-primary-indeterminate-translate-reverse {
0% {
-webkit-transform: translateX(0);
transform: translateX(0);
}
20% {
-webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
-webkit-transform: translateX(0);
transform: translateX(0);
}
59.15% {
-webkit-animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
-webkit-transform: translateX(-83.67142%);
transform: translateX(-83.67142%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-half-neg, -83.67142%));
transform: translateX(var(--mdc-linear-progress-primary-half-neg, -83.67142%));
}
100% {
-webkit-transform: translateX(-200.611057%);
transform: translateX(-200.611057%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-full-neg, -200.611057%));
transform: translateX(var(--mdc-linear-progress-primary-full-neg, -200.611057%));
}
}
@keyframes mdc-linear-progress-primary-indeterminate-translate-reverse {
0% {
-webkit-transform: translateX(0);
transform: translateX(0);
}
20% {
-webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
animation-timing-function: cubic-bezier(0.5, 0, 0.701732, 0.495819);
-webkit-transform: translateX(0);
transform: translateX(0);
}
59.15% {
-webkit-animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
animation-timing-function: cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);
-webkit-transform: translateX(-83.67142%);
transform: translateX(-83.67142%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-half-neg, -83.67142%));
transform: translateX(var(--mdc-linear-progress-primary-half-neg, -83.67142%));
}
100% {
-webkit-transform: translateX(-200.611057%);
transform: translateX(-200.611057%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-primary-full-neg, -200.611057%));
transform: translateX(var(--mdc-linear-progress-primary-full-neg, -200.611057%));
}
}
@-webkit-keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse {
0% {
-webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
-webkit-transform: translateX(0);
transform: translateX(0);
}
25% {
-webkit-animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
-webkit-transform: translateX(-37.651913%);
transform: translateX(-37.651913%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-quarter-neg, -37.651913%));
transform: translateX(var(--mdc-linear-progress-secondary-quarter-neg, -37.651913%));
}
48.35% {
-webkit-animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
-webkit-transform: translateX(-84.386165%);
transform: translateX(-84.386165%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-half-neg, -84.386165%));
transform: translateX(var(--mdc-linear-progress-secondary-half-neg, -84.386165%));
}
100% {
-webkit-transform: translateX(-160.277782%);
transform: translateX(-160.277782%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-full-neg, -160.277782%));
transform: translateX(var(--mdc-linear-progress-secondary-full-neg, -160.277782%));
}
}
@keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse {
0% {
-webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
-webkit-transform: translateX(0);
transform: translateX(0);
}
25% {
-webkit-animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
-webkit-transform: translateX(-37.651913%);
transform: translateX(-37.651913%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-quarter-neg, -37.651913%));
transform: translateX(var(--mdc-linear-progress-secondary-quarter-neg, -37.651913%));
}
48.35% {
-webkit-animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
-webkit-transform: translateX(-84.386165%);
transform: translateX(-84.386165%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-half-neg, -84.386165%));
transform: translateX(var(--mdc-linear-progress-secondary-half-neg, -84.386165%));
}
100% {
-webkit-transform: translateX(-160.277782%);
transform: translateX(-160.277782%);
/* @alternate */
-webkit-transform: translateX(var(--mdc-linear-progress-secondary-full-neg, -160.277782%));
transform: translateX(var(--mdc-linear-progress-secondary-full-neg, -160.277782%));
}
}
@-webkit-keyframes mdc-linear-progress-buffering-reverse {
from {
-webkit-transform: translateX(-10px);
transform: translateX(-10px);
}
}
@keyframes mdc-linear-progress-buffering-reverse {
from {
-webkit-transform: translateX(-10px);
transform: translateX(-10px);
}
}
.mdc-linear-progress {
position: relative;
width: 100%;
-webkit-transform: translateZ(0);
transform: translateZ(0);
outline: 1px solid transparent;
overflow: hidden;
transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}
@media screen and (forced-colors: active) {
.mdc-linear-progress {
outline-color: CanvasText;
}
}
.mdc-linear-progress__bar {
position: absolute;
width: 100%;
height: 100%;
-webkit-animation: none;
animation: none;
-webkit-transform-origin: top left;
transform-origin: top left;
transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}
.mdc-linear-progress__bar-inner {
display: inline-block;
position: absolute;
width: 100%;
-webkit-animation: none;
animation: none;
border-top-style: solid;
}
.mdc-linear-progress__buffer {
display: flex;
position: absolute;
width: 100%;
height: 100%;
}
.mdc-linear-progress__buffer-dots {
background-repeat: repeat-x;
flex: auto;
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
-webkit-animation: mdc-linear-progress-buffering 250ms infinite linear;
animation: mdc-linear-progress-buffering 250ms infinite linear;
}
.mdc-linear-progress__buffer-bar {
flex: 0 1 100%;
transition: flex-basis 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}
.mdc-linear-progress__primary-bar {
-webkit-transform: scaleX(0);
transform: scaleX(0);
}
.mdc-linear-progress__secondary-bar {
display: none;
}
.mdc-linear-progress--indeterminate .mdc-linear-progress__bar {
transition: none;
}
.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {
left: -145.166611%;
}
.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {
left: -54.888891%;
display: block;
}
.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar {
-webkit-animation: mdc-linear-progress-primary-indeterminate-translate 2s infinite linear;
animation: mdc-linear-progress-primary-indeterminate-translate 2s infinite linear;
}
.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar > .mdc-linear-progress__bar-inner {
-webkit-animation: mdc-linear-progress-primary-indeterminate-scale 2s infinite linear;
animation: mdc-linear-progress-primary-indeterminate-scale 2s infinite linear;
}
.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar {
-webkit-animation: mdc-linear-progress-secondary-indeterminate-translate 2s infinite linear;
animation: mdc-linear-progress-secondary-indeterminate-translate 2s infinite linear;
}
.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar > .mdc-linear-progress__bar-inner {
-webkit-animation: mdc-linear-progress-secondary-indeterminate-scale 2s infinite linear;
animation: mdc-linear-progress-secondary-indeterminate-scale 2s infinite linear;
}
[dir=rtl] .mdc-linear-progress, .mdc-linear-progress[dir=rtl] {
/*rtl:begin:ignore*/
/*rtl:end:ignore*/
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]) .mdc-linear-progress__bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]) .mdc-linear-progress__bar {
/* @noflip */
/*rtl:ignore*/
right: 0;
/* @noflip */
/*rtl:ignore*/
-webkit-transform-origin: center right;
/* @noflip */
/*rtl:ignore*/
transform-origin: center right;
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar {
-webkit-animation-name: mdc-linear-progress-primary-indeterminate-translate-reverse;
animation-name: mdc-linear-progress-primary-indeterminate-translate-reverse;
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar {
-webkit-animation-name: mdc-linear-progress-secondary-indeterminate-translate-reverse;
animation-name: mdc-linear-progress-secondary-indeterminate-translate-reverse;
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]) .mdc-linear-progress__buffer-dots, .mdc-linear-progress[dir=rtl]:not([dir=ltr]) .mdc-linear-progress__buffer-dots {
-webkit-animation: mdc-linear-progress-buffering-reverse 250ms infinite linear;
animation: mdc-linear-progress-buffering-reverse 250ms infinite linear;
-webkit-transform: rotate(0);
transform: rotate(0);
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {
/* @noflip */
/*rtl:ignore*/
right: -145.166611%;
/* @noflip */
/*rtl:ignore*/
left: auto;
}
[dir=rtl] .mdc-linear-progress:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar, .mdc-linear-progress[dir=rtl]:not([dir=ltr]).mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {
/* @noflip */
/*rtl:ignore*/
right: -54.888891%;
/* @noflip */
/*rtl:ignore*/
left: auto;
}
.mdc-linear-progress--closed {
opacity: 0;
}
.mdc-linear-progress--closed-animation-off .mdc-linear-progress__buffer-dots {
-webkit-animation: none;
animation: none;
}
.mdc-linear-progress--closed-animation-off.mdc-linear-progress--indeterminate .mdc-linear-progress__bar,
.mdc-linear-progress--closed-animation-off.mdc-linear-progress--indeterminate .mdc-linear-progress__bar .mdc-linear-progress__bar-inner {
-webkit-animation: none;
animation: none;
}
.mdc-linear-progress__bar-inner {
border-color: #6200ee;
/* @alternate */
border-color: var(--mdc-theme-primary, #6200ee);
}
.mdc-linear-progress__buffer-dots {
background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23e6e6e6'/%3E%3C/svg%3E");
}
.mdc-linear-progress__buffer-bar {
background-color: #e6e6e6;
}
.mdc-linear-progress {
height: 4px;
}
.mdc-linear-progress__bar-inner {
border-top-width: 4px;
}
.mdc-linear-progress__buffer-dots {
background-size: 10px 4px;
}
/*# sourceMappingURL=mdc.linear-progress.css.map*/