_buttons.scss 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. // CUSTOM Button Sizes
  2. .btn.w-100:has(+.btn) {
  3. margin-bottom: 1px;
  4. }
  5. .btn {
  6. transition-property: background, color, border;
  7. }
  8. .btn-lg {
  9. font-size: $font-size-lg;
  10. }
  11. .btn-hero {
  12. font-size: 1.125rem;
  13. padding: $btn-hero-padding-y $btn-hero-padding-x;
  14. &.btn-iconed {
  15. padding-top: $btn-hero-iconed-padding-top;
  16. padding-bottom: $btn-hero-iconed-padding-bottom;
  17. };
  18. &.btn-iconed > .btn-icon {
  19. //margin-left: $btn-hero-padding-x;
  20. //margin-top: -$btn-hero-iconed-padding-top;
  21. //margin-bottom: -$btn-hero-iconed-padding-bottom;
  22. //margin-right: -$btn-hero-padding-x;
  23. margin-top: calc(calc($btn-hero-iconed-padding-top + $btn-border-width)*-1);
  24. margin-bottom: calc(calc($btn-hero-iconed-padding-bottom + $btn-border-width)*-1);
  25. margin-left: calc($btn-hero-padding-x);
  26. margin-right: calc(calc($btn-hero-padding-x + $btn-border-width)*-1);
  27. width: 4em;
  28. }
  29. &.btn-iconed-left .btn-icon {
  30. order: -1;
  31. justify-self: flex-start;
  32. margin-left: calc(calc($btn-hero-padding-x + $btn-border-width)*-1);
  33. margin-right: calc($btn-hero-padding-x);
  34. }
  35. }
  36. .btn-iconed {
  37. justify-content: space-between;
  38. display: inline-flex;
  39. align-items: center;
  40. font-weight: bold;
  41. position: relative;
  42. white-space: normal;
  43. text-align: left;
  44. padding-top: $btn-iconed-padding-top;
  45. padding-bottom: $btn-iconed-padding-bottom;
  46. --#{$prefix}btn-icon-bg: transparent;
  47. --#{$prefix}btn-icon-color: inherit;
  48. --#{$prefix}btn-icon-hover-bg: transparent;
  49. }
  50. .btn-iconed {
  51. > .btn-icon {
  52. align-self: stretch;
  53. flex-grow: 0;
  54. flex-shrink: 0;
  55. display: flex;
  56. align-items: center;
  57. justify-content: center;
  58. justify-self: flex-end;
  59. width: 2.25em;
  60. margin-top: calc(calc($btn-iconed-padding-top + $btn-border-width) * -1);
  61. margin-bottom: calc(calc($btn-iconed-padding-bottom + $btn-border-width) * -1);
  62. margin-left: calc($btn-padding-x);
  63. margin-right: calc(calc($btn-padding-x + $btn-border-width) * -1);
  64. color: var(--#{$prefix}btn-icon-color);
  65. @include gradient-bg(var(--#{$prefix}btn-icon-bg));
  66. @include transition($btn-transition);
  67. @include box-shadow(var(--#{$prefix}btn-box-shadow));
  68. }
  69. &:hover > .btn-icon {
  70. color: var(--#{$prefix}btn-icon-hover-color);
  71. background-color: var(--#{$prefix}btn-icon-hover-bg);
  72. }
  73. }
  74. .btn-iconed > .btn-icon:before {
  75. margin-top: -0.1em;
  76. }
  77. .btn-iconed .btn-icon.ifc-add:before {
  78. font-size: 1.2em;
  79. }
  80. .btn-lg .btn-icon {
  81. width: 2.1em;
  82. margin-right: calc(calc($btn-padding-x-lg + $btn-border-width)*-1);
  83. }
  84. // iconed specific
  85. .btn-iconed-left {
  86. justify-content: flex-start;
  87. }
  88. .btn-iconed-left .btn-icon {
  89. order: -1;
  90. justify-self: flex-start;
  91. margin-left: calc(calc($btn-padding-x + $btn-border-width)*-1);
  92. margin-right: calc($btn-padding-x);
  93. }
  94. //iconed Buttons
  95. .btn-iconed-default {
  96. @include iconed-button-variant(false, $antrazit15, $antrazit15, $body-color, $body-color,
  97. $antrazit25,
  98. $antrazit25,
  99. $antrazit25);
  100. //--#{$prefix}btn-color: #{$body-color};
  101. }
  102. .btn-iconed-default-white {
  103. @include iconed-button-variant(false, $antrazit25, $antrazit25, $white, $white,
  104. shade-color($antrazit25, $btn-hover-bg-shade-amount),
  105. shade-color($antrazit25, $btn-hover-bg-shade-amount),
  106. shade-color($antrazit25, $btn-hover-bg-shade-amount),
  107. $white);
  108. }
  109. .btn-iconed-anthrazit-08-primary {
  110. @include iconed-button-variant(false, $antrazit05, $antrazit05, $primary-d-100, $primary, $antrazit08, $primary, $primary, $white, $primary-d-100);
  111. }
  112. .btn-iconed-simple {
  113. //@include iconed-button-variant($white, $antrazit15/*, $antrazit15*/, null, true);
  114. @include iconed-button-variant(true, $antrazit15, $antrazit15, $white);
  115. --#{$prefix}btn-hover-color: white;
  116. --#{$prefix}btn-icon-hover-color: white;
  117. }
  118. .btn-iconed-primary {
  119. //@include iconed-button-variant($white, $btn-primary-bg/*, $btn-primary-bg*/);
  120. @include iconed-button-variant(false, $btn-primary-bg, $btn-primary-bg /*, $btn-primary-bg*/);
  121. }