Font-Awesome/scss/_rotated-flipped.scss
Macdonald, Zak cd77695e1b SASS refactor, changes outlined below:
**functions.scss**
- added convenience functions
  - `fudge` fudge a number from 0-6 decimal places
  - `unitless` simple hack to parse a number from a unit

**icons.scss**
- removed explicit definitions in favor of a loop iterating `$fa-var-glyphs`

**mixins.scss**
- removed requirement to pass `$rotation` to `@fa-icon-rotate`, it is now calculated
  - calculation required since `$fa-rotation-increment` is configurable, meaning not every rotation may adhere to 90 degree increments requiring $rotation

**rotated-flipped.scss**
- rotations are now calculated by a loop iterating `$fa-rotation-increment`
- the ie fix is now calculated using a loop iterating only the rotation selectors requiring intervention
  - this is required now that `$fa-rotation-increment` eists

**sizes.scss**
- sizes are now calculated by a loop iterating `$fa-var-scales`
  - this new method supports the existing `.fa-lg` selector, as well as introducing: `.fa-xsm` (33%), `.fa-sm` (66%x), `.fa-default` (100%), `.fa-xlg` (166%)
- multipliers are now calculated by a loop iterating `$fa-var-multipliers`
  - this new method supports all existing multipliers (`.fa-2x`, `.fa-3x`, `.fa-4x`, `.fa-5x`)

**variables.scss**
- added variables:
  - deprecated explicit icon variables in favor of an array value (`$fa-var-glyphs`)
  - `$fa-rotation-increment`
  - `$fa-var-scales`
  - `$fa-var-multipliers`

**font-awesome.scss**
- added `functions.scss`

**misc.**
- minor code cleanup
2015-06-28 18:26:27 -07:00

42 lines
1023 B
SCSS

// Rotated & Flipped Icons
// -------------------------
$rotations-requiring-ie-fix: (
"flip-horizontal",
"flip-vertical"
);
$rotation-selector: '';
// calculate classes and values for rotation
@for $i from 0 through 359 {
@if $i == 0 or $i % $fa-rotation-increment == 0 {
$rotation-selector: #{$fa-css-prefix}-rotate-#{$i};
.#{$rotation-selector} {
@include fa-icon-rotate($i);
}
// check if this item needs some ie love
@if $i == 0 or $i % 90 == 0 {
$rotations-requiring-ie-fix: append($rotations-requiring-ie-fix, #{$rotation-selector});
}
}
}
// flip icons horizontal/vertical
.#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); }
.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); }
// ie 8-9 fix
// -------------------------
// todo: check on assigning an array of selectors to the selector instead of using
// this loop
:root {
@each $fix in $rotations-requiring-ie-fix {
.#{$fix} {
filter: none;
}
}
}