|
|
- /**
- * icon
- *
- * use svg as icon
- *
- * <svg class="icon">
- * <use src="#"></use>
- * </svg>
- *
- *
- * @author Björn Hase
- *
- */
-
-
- $icon__vertical-align: middle !default;
- $icon__margin: 0 2px !default;
-
- // width & height
- $icon__sizes: (
- 'default': 18px,
- 'small': 14px,
- 'large': 28px
- ) !default;
-
- // colors
- $icon__colors: (
- 'default' : black,
- 'secondary' : grey,
- ) !default;
-
- @mixin crispy-boilerplate-icon() {
- .icon {
- display: inline-block;
- position: relative;
- vertical-align: $icon__vertical-align;
- margin: $icon__margin;
-
- @include crispy-boilerplate-icon-colors($icon__colors);
- @include crispy-boilerplate-icon-sizes($icon__sizes);
-
- @content;
- }
- }
-
- /**
- * add modificators for icons as fill from map
- *
- *
- * @param {map} $colors
- *
- */
- @mixin crispy-boilerplate-icon-colors($colors) {
- @each $name, $color in $colors {
- @if ($name == 'default') {
- @include crispy-boilerplate-icon-color($color);
- } @else {
- &--#{$name} {
- @include crispy-boilerplate-icon-color($color);
- }
- }
- }
- }
-
- /**
- * add color as fill
- *
- *
- * @param {color} $color
- *
- */
- @mixin crispy-boilerplate-icon-color($color) {
- fill: $color;
- }
-
- /**
- * adding sizes for icons from map
- *
- *
- * @param {map} $sizes
- *
- */
- @mixin crispy-boilerplate-icon-sizes($sizes) {
- @each $name, $size in $sizes {
- @if ($name == 'default') {
- @include crispy-boilerplate-icon-size($size);
- } @else {
- &--#{$name} {
- @include crispy-boilerplate-icon-size($size);
- }
- }
- }
- }
-
- /**
- * add size for icon as width and height
- *
- *
- * @param {px} $size
- *
- */
- @mixin crispy-boilerplate-icon-size($size) {
- width: $size;
- height: $size;
- }
|