90 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			SCSS
		
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			SCSS
		
	
	
	
/**
 | 
						||
 * Progress
 | 
						||
 */
 | 
						||
 | 
						||
// Reboot based on :
 | 
						||
// - normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
 | 
						||
// - sanitize.css v13.0.0 | CC0 1.0 Universal | github.com/csstools/sanitize.css
 | 
						||
// ––––––––––––––––––––
 | 
						||
 | 
						||
// 1. Add the correct display in Edge 18- and IE
 | 
						||
// 2. Add the correct vertical alignment in Chrome, Edge, and Firefox
 | 
						||
progress {
 | 
						||
  display: inline-block; // 1
 | 
						||
  vertical-align: baseline; // 2
 | 
						||
}
 | 
						||
 | 
						||
// Pico
 | 
						||
// ––––––––––––––––––––
 | 
						||
 | 
						||
progress {
 | 
						||
  // Reset the default appearance
 | 
						||
  -webkit-appearance: none;
 | 
						||
  -moz-appearance: none;
 | 
						||
 | 
						||
  // Styles
 | 
						||
  display: inline-block;
 | 
						||
  appearance: none;
 | 
						||
  width: 100%;
 | 
						||
  height: 0.5rem;
 | 
						||
  margin-bottom: calc(var(--spacing) * 0.5);
 | 
						||
  overflow: hidden;
 | 
						||
 | 
						||
  // Remove Firefox and Opera border
 | 
						||
  border: 0;
 | 
						||
  border-radius: var(--border-radius);
 | 
						||
  background-color: var(--progress-background-color);
 | 
						||
 | 
						||
  // IE10 uses `color` to set the bar background-color
 | 
						||
  color: var(--progress-color);
 | 
						||
 | 
						||
  &::-webkit-progress-bar {
 | 
						||
    border-radius: var(--border-radius);
 | 
						||
    background: none;
 | 
						||
  }
 | 
						||
  &[value]::-webkit-progress-value {
 | 
						||
    background-color: var(--progress-color);
 | 
						||
  }
 | 
						||
  &::-moz-progress-bar {
 | 
						||
    background-color: var(--progress-color);
 | 
						||
  }
 | 
						||
 | 
						||
  // Indeterminate state
 | 
						||
  @media (prefers-reduced-motion: no-preference) {
 | 
						||
    &:indeterminate {
 | 
						||
      background: var(--progress-background-color)
 | 
						||
        linear-gradient(
 | 
						||
          to right,
 | 
						||
          var(--progress-color) 30%,
 | 
						||
          var(--progress-background-color) 30%
 | 
						||
        )
 | 
						||
        top left / 150% 150% no-repeat;
 | 
						||
      animation: progress-indeterminate  1s linear infinite;
 | 
						||
 | 
						||
      &[value]::-webkit-progress-value {
 | 
						||
        background-color: transparent;
 | 
						||
      }
 | 
						||
      &::-moz-progress-bar {
 | 
						||
        background-color: transparent;
 | 
						||
      }
 | 
						||
    }
 | 
						||
  }
 | 
						||
}
 | 
						||
 | 
						||
[dir="rtl"] {
 | 
						||
  @media (prefers-reduced-motion: no-preference) {
 | 
						||
    progress:indeterminate {
 | 
						||
      animation-direction: reverse;
 | 
						||
    }
 | 
						||
  }
 | 
						||
}
 | 
						||
 | 
						||
@keyframes progress-indeterminate {
 | 
						||
  0% {
 | 
						||
    background-position: 200% 0;
 | 
						||
  }
 | 
						||
  100% {
 | 
						||
    background-position: -200% 0;
 | 
						||
  }
 | 
						||
}
 |