/* * # Semantic - Progress Bar * http://github.com/semantic-org/semantic-ui/ * * * Copyright 2014 Contributors * Released under the MIT license * http://opensource.org/licenses/MIT * */ /******************************* Theme *******************************/ @type : 'module'; @element : 'progress'; @import '../../semantic.config'; .ui.progress { position: relative; display: block; max-width: 100%; border: @border; margin: @margin; box-shadow: @boxShadow; background: @background; padding: @padding; border-radius: @borderRadius; } .ui.progress:first-child { margin: @firstMargin; } .ui.progress:last-child { margin: @lastMargin; } /* Indicating */ .ui.indicating.progress .bar[style^="width: 3"] { background-color: @indicatingSecondColor; } .ui.indicating.progress .bar[style^="width: 4"], .ui.indicating.progress .bar[style^="width: 5"] { background-color: @indicatingThirdColor; } .ui.indicating.progress .bar[style^="width: 6"] { background-color: @indicatingFourthColor; } .ui.indicating.progress .bar[style^="width: 7"], .ui.indicating.progress .bar[style^="width: 8"] { background-color: @indicatingFifthColor; } .ui.indicating.progress .bar[style^="width: 9"], .ui.indicating.progress .bar[style^="width: 100"] { background-color: @indicatingSixthColor; } .ui.indicating.progress .bar[style^="width: 1%"], .ui.indicating.progress .bar[style^="width: 2%"], .ui.indicating.progress .bar[style^="width: 3%"], .ui.indicating.progress .bar[style^="width: 4%"], .ui.indicating.progress .bar[style^="width: 5%"], .ui.indicating.progress .bar[style^="width: 6%"], .ui.indicating.progress .bar[style^="width: 7%"], .ui.indicating.progress .bar[style^="width: 8%"], .ui.indicating.progress .bar[style^="width: 9%"], .ui.indicating.progress .bar[style^="width: 1"], .ui.indicating.progress .bar[style^="width: 2"] { background-color: @indicatingFirstColor; } /* Single Digits Last */ .ui.indicating.progress .bar[style^="width: 1%"] + .label, .ui.indicating.progress .bar[style^="width: 2%"] + .label, .ui.indicating.progress .bar[style^="width: 3%"] + .label, .ui.indicating.progress .bar[style^="width: 4%"] + .label, .ui.indicating.progress .bar[style^="width: 5%"] + .label, .ui.indicating.progress .bar[style^="width: 6%"] + .label, .ui.indicating.progress .bar[style^="width: 7%"] + .label, .ui.indicating.progress .bar[style^="width: 8%"] + .label, .ui.indicating.progress .bar[style^="width: 9%"] + .label, .ui.indicating.progress .bar[style^="width: 1"] + .label, .ui.indicating.progress .bar[style^="width: 2"] + .label { color: @indicatingFirstColor; } .ui.indicating.progress .bar[style^="width: 3"] + .label { color: @indicatingSecondColor; } .ui.indicating.progress .bar[style^="width: 4"] + .label, .ui.indicating.progress .bar[style^="width: 5"] + .label { color: @indicatingThirdColor; } .ui.indicating.progress .bar[style^="width: 6"] + .label { color: @indicatingFourthColor; } .ui.indicating.progress .bar[style^="width: 7"] + .label, .ui.indicating.progress .bar[style^="width: 8"] + .label { color: @indicatingFifthColor; } .ui.indicating.progress .bar[style^="width: 9"] + .label, .ui.indicating.progress .bar[style^="width: 100"] + .label { color: @indicatingSixthColor; } /******************************* Content *******************************/ /* Activity Bar */ .ui.progress .bar { display: block; line-height: 1; position: @barPosition; width: @barInitialWidth; min-width: @barMinWidth; height: @barHeight; background: @barBackground; border-radius: @barBorderRadius; transition: @barTransition; } /* Percent Complete */ .ui.progress .bar > .progress { white-space: nowrap; position: absolute; width: @progressWidth; font-size: @progressSize; top: @progressTop; right: @progressRight; left: @progressLeft; bottom: @progressBottom; color: @progressColor; text-shadow: @progressTextShadow; margin-top: @progressOffset; font-weight: @progressFontWeight; text-align: @progressTextAlign; } /* Label */ .ui.progress > .label { position: absolute; width: @labelWidth; font-size: @labelSize; top: @labelTop; right: @labelRight; left: @labelLeft; bottom: @labelBottom; color: @labelColor; font-weight: @labelFontWeight; text-shadow: @labelTextShadow; margin-top: @labelOffset; text-align: @labelTextAlign; transition: @labelTransition; } /******************************* States *******************************/ /*-------------- Success ---------------*/ .ui.progress.success .bar { background-color: @successColor !important; } .ui.progress.success .bar, .ui.progress.success .bar::after { animation: none !important; } .ui.progress.success > .label { color: @successHeaderColor; } /*-------------- Warning ---------------*/ .ui.progress.warning .bar { background-color: @warningColor !important; } .ui.progress.warning .bar, .ui.progress.warning .bar::after { animation: none !important; } .ui.progress.warning > .label { color: @warningHeaderColor; } /*-------------- Error ---------------*/ .ui.progress.error .bar { background-color: @errorColor !important; } .ui.progress.error .bar, .ui.progress.error .bar::after { animation: none !important; } .ui.progress.error > .label { color: @errorHeaderColor; } /*-------------- Active ---------------*/ .ui.active.progress .bar { position: relative; min-width: @activeMinWidth; } .ui.active.progress .bar::after { content: ''; opacity: 0; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; background: @activePulseColor; border-radius: @barBorderRadius; animation: progress-active @activePulseDuration @defaultEasing infinite; } @keyframes progress-active { 0% { opacity: @activePulseMaxOpacity; width: 0; } 90% { } 100% { opacity: 0; width: 100%; } } /*-------------- Disabled ---------------*/ .ui.disabled.progress { opacity: 0.35; } .ui.disabled.progress .bar, .ui.disabled.progress .bar::after { animation: none !important; } /******************************* Variations *******************************/ /*-------------- Inverted ---------------*/ /* bottom attached */ .ui.inverted.progress { background: @invertedBackground; border: @invertedBorder; } .ui.inverted.progress .bar { background: @invertedBarBackground; } .ui.inverted.progress .bar > .progress { color: @invertedProgressColor; } .ui.inverted.progress > .label { color: @invertedLabelColor; } .ui.inverted.progress.success > .label { color: @successColor; } .ui.inverted.progress.warning > .label { color: @warningColor; } .ui.inverted.progress.error > .label { color: @errorColor; } /*-------------- Attached ---------------*/ /* bottom attached */ .ui.progress.attached { background: none transparent; position: relative; border: none; margin: 0em; } .ui.progress.attached, .ui.progress.attached .bar { display: block; height: @attachedHeight; padding: 0px; overflow: hidden; border-radius: 0em 0em @attachedBorderRadius @attachedBorderRadius; } .ui.progress.attached .bar { border-radius: 0em; } /* top attached */ .ui.progress.top.attached, .ui.progress.top.attached .bar { top: 0px; border-radius: @attachedBorderRadius @attachedBorderRadius 0em 0em; } .ui.progress.top.attached .bar { border-radius: 0em; } /*-------------- Colors ---------------*/ .ui.black.progress .bar { background-color: @black; } .ui.blue.progress .bar { background-color: @blue; } .ui.green.progress .bar { background-color: @green; } .ui.orange.progress .bar { background-color: @orange; } .ui.pink.progress .bar { background-color: @pink; } .ui.purple.progress .bar { background-color: @purple; } .ui.red.progress .bar { background-color: @red; } .ui.teal.progress .bar { background-color: @teal; } .ui.yellow.progress .bar { background-color: @yellow; } .ui.black.inverted.progress .bar { background-color: @lightBlack; } .ui.blue.inverted.progress .bar { background-color: @lightBlue; } .ui.green.inverted.progress .bar { background-color: @lightGreen; } .ui.orange.inverted.progress .bar { background-color: @lightOrange; } .ui.pink.inverted.progress .bar { background-color: @lightPink; } .ui.purple.inverted.progress .bar { background-color: @lightPurple; } .ui.red.inverted.progress .bar { background-color: @lightRed; } .ui.teal.inverted.progress .bar { background-color: @lightTeal; } .ui.yellow.inverted.progress .bar { background-color: @lightYellow; } /*-------------- Sizes ---------------*/ .ui.small.progress .bar { height: 14px; }