buttons.less 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. //
  2. // Buttons Flavor
  3. // --------------------------------------------------
  4. // mixins
  5. .misago-btn(@color, @bg, @color-hover, @bg-hover, @color-active, @bg-active) {
  6. &, &:disabled, &:disabled:hover {
  7. background: @bg;
  8. border: 1px solid @bg;
  9. color: @color;
  10. .box-shadow(none);
  11. }
  12. &:hover, &:focus {
  13. background: @bg-hover;
  14. border: 1px solid @bg-hover;
  15. color: @color-hover;
  16. .box-shadow(none);
  17. }
  18. &:active:focus, &:active,
  19. .dropdown.open &,
  20. .dropdown.open &:focus,
  21. .dropdown.open &:active:focus,
  22. .dropdown.open &:hover {
  23. background: @bg-active;
  24. border: 1px solid @bg-active;
  25. color: @color-active;
  26. .box-shadow(none);
  27. }
  28. &.btn-loading {
  29. &, &:disabled, &:disabled:hover,
  30. &:hover, &:focus,
  31. &:active:focus, &:active {
  32. color: transparent;
  33. }
  34. }
  35. }
  36. .misago-btn-outline(@color, @bg, @border,
  37. @color-hover, @bg-hover, @border-hover,
  38. @color-active, @bg-active, @border-active) {
  39. &, &:disabled, &:disabled:hover {
  40. background: @bg;
  41. border: 1px solid @border;
  42. color: @color;
  43. .box-shadow(none);
  44. }
  45. &:hover, &:focus {
  46. background: @bg-hover;
  47. border: 1px solid @border-hover;
  48. color: @color-hover;
  49. .box-shadow(none);
  50. }
  51. &:active:focus, &:active,
  52. .dropdown.open &,
  53. .dropdown.open &:focus,
  54. .dropdown.open &:active:focus,
  55. .dropdown.open &:hover {
  56. background: @bg-active;
  57. border: 1px solid @border-active;
  58. color: @color-active;
  59. .box-shadow(none);
  60. }
  61. &.btn-loading {
  62. &, &:disabled, &:disabled:hover,
  63. &:hover, &:focus,
  64. &:active:focus, &:active {
  65. background: @bg;
  66. border: 1px solid @border;
  67. color: transparent;
  68. .box-shadow(none);
  69. }
  70. }
  71. }
  72. // button styles
  73. .btn-default {
  74. .misago-btn(
  75. @btn-default-color,
  76. @btn-default-bg,
  77. @btn-default-hover-color,
  78. @btn-default-hover-bg,
  79. @btn-default-active-color,
  80. @btn-default-active-bg
  81. );
  82. }
  83. .btn-primary {
  84. .misago-btn(
  85. @btn-primary-color,
  86. @btn-primary-bg,
  87. @btn-primary-hover-color,
  88. @btn-primary-hover-bg,
  89. @btn-primary-active-color,
  90. @btn-primary-active-bg
  91. );
  92. }
  93. .btn-success {
  94. .misago-btn(
  95. @btn-success-color,
  96. @btn-success-bg,
  97. @btn-success-hover-color,
  98. @btn-success-hover-bg,
  99. @btn-success-active-color,
  100. @btn-success-active-bg
  101. );
  102. }
  103. .btn-danger {
  104. .misago-btn(
  105. @btn-danger-color,
  106. @btn-danger-bg,
  107. @btn-danger-hover-color,
  108. @btn-danger-hover-bg,
  109. @btn-danger-active-color,
  110. @btn-danger-active-bg
  111. );
  112. }
  113. // outlined button styles
  114. .btn-default.btn-outline {
  115. .misago-btn-outline(
  116. @btn-default-outline-color,
  117. @btn-default-outline-bg,
  118. @btn-default-outline-border,
  119. @btn-default-outline-hover-color,
  120. @btn-default-outline-hover-bg,
  121. @btn-default-outline-hover-border,
  122. @btn-default-outline-active-color,
  123. @btn-default-outline-active-bg,
  124. @btn-default-outline-active-border
  125. );
  126. }
  127. .btn-primary.btn-outline {
  128. .misago-btn-outline(
  129. @btn-primary-outline-color,
  130. @btn-primary-outline-bg,
  131. @btn-primary-outline-border,
  132. @btn-primary-outline-hover-color,
  133. @btn-primary-outline-hover-bg,
  134. @btn-primary-outline-hover-border,
  135. @btn-primary-outline-active-color,
  136. @btn-primary-outline-active-bg,
  137. @btn-primary-outline-active-border
  138. );
  139. }