_icons.scss 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. //
  2. // Icon component
  3. //
  4. .icon {
  5. --#{$prefix}icon-size: #{$font-size-base * $line-height-base};
  6. width: var(--#{$prefix}icon-size);
  7. height: var(--#{$prefix}icon-size);
  8. font-size: var(--#{$prefix}icon-size);
  9. vertical-align: bottom;
  10. @if $icon-stroke-width {
  11. stroke-width: $icon-stroke-width;
  12. }
  13. &:hover {
  14. text-decoration: none;
  15. }
  16. }
  17. //
  18. // Inline icon
  19. //
  20. .icon-inline {
  21. --#{$prefix}icon-size: 1rem;
  22. vertical-align: -.2rem;
  23. }
  24. //
  25. // Filled icon
  26. //
  27. .icon-filled {
  28. fill: currentColor;
  29. }
  30. //
  31. // Icon size
  32. //
  33. .icon-sm {
  34. --#{$prefix}icon-size: 1rem;
  35. stroke-width: 1;
  36. }
  37. .icon-md {
  38. --#{$prefix}icon-size: 2.5rem;
  39. stroke-width: 1;
  40. }
  41. .icon-lg {
  42. --#{$prefix}icon-size: 3.5rem;
  43. stroke-width: 1;
  44. }
  45. //
  46. // Icons animation
  47. //
  48. .icon-pulse {
  49. transition: all .15s ease 0s;
  50. animation: pulse 2s ease infinite;
  51. animation-fill-mode: both
  52. }
  53. .icon-tada {
  54. transition: all .15s ease 0s;
  55. animation: tada 3s ease infinite;
  56. animation-fill-mode: both
  57. }
  58. .icon-rotate {
  59. transition: all .15s ease 0s;
  60. animation: rotate-360 3s linear infinite;
  61. animation-fill-mode: both
  62. }