buttons.less 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. // common styles for dynamically generated buttons (to be used with .button-gen())
  2. .button-gen-common() {
  3. display: inline-block;
  4. text-align: center;
  5. cursor: pointer;
  6. position: relative;
  7. z-index: 0;
  8. vertical-align: middle;
  9. -ms-user-select: none;
  10. -moz-user-select: none;
  11. -webkit-user-select: none;
  12. user-select: none;
  13. text-decoration: none;
  14. text-shadow: none;
  15. -webkit-font-smoothing: auto;
  16. transition: color .3s ease-out, border .3s ease-out, background .3s ease-out, box-shadow .3s ease-out !important; // !important necessary for RevSlider compatibility (>=5.1)
  17. font: normal 14px/1em var( --vamtam-primary-font-font-family );
  18. &:focus {
  19. outline: 1px dotted #000;
  20. }
  21. &:hover {
  22. text-decoration: none;
  23. }
  24. }
  25. .button-gen-solid() {
  26. .button-gen-common();
  27. border-radius: 100px;
  28. border: none;
  29. padding: 16px 30px;
  30. -webkit-font-smoothing: auto;
  31. }
  32. .button-gen-underline-common() {
  33. line-height: 1.2em;
  34. padding: 0px 0px 2px 0px;
  35. border-bottom: 2px solid;
  36. }
  37. .button-gen-underline() {
  38. .button-gen-common();
  39. .button-gen-underline-common();
  40. }
  41. .button-gen-common-sc() {
  42. .button-gen-common();
  43. &.button-solid {
  44. .button-gen-solid();
  45. }
  46. &.button-border {
  47. border-radius: 100px;
  48. box-shadow: none;
  49. padding: 14px 29px;
  50. border: 1px solid;
  51. }
  52. &.button-underline {
  53. .button-gen-underline-common();
  54. }
  55. }
  56. // mixins for generating button styles based on their background color
  57. //
  58. // this MUST include only colors
  59. .button-gen( @bgcolor ) {
  60. background: var( e( @bgcolor ) );
  61. color: var( e( "@{bgcolor}-hc" ) );
  62. box-shadow: 0 0 25px -14px var( e( @bgcolor ) );
  63. }
  64. .button-gen-border( @bgcolor ) {
  65. background: var( e( "@{bgcolor}-transparent" ) );
  66. color: var( e( @bgcolor ) );
  67. border-color: var( e( @bgcolor ) );
  68. }
  69. .button-gen-sc( @bgcolor ) {
  70. &.button-solid {
  71. .button-gen( @bgcolor );
  72. }
  73. &.button-border,
  74. &.button-underline {
  75. .button-gen-border( @bgcolor )
  76. }
  77. }
  78. /////////////////
  79. .button-gen-hover( @bgcolor ) {
  80. &:hover {
  81. background: var( e( @bgcolor ) );
  82. color: var( e( "@{bgcolor}-hc" ) );
  83. box-shadow: 0 0 25px -14px var( e( @bgcolor ) );
  84. }
  85. }
  86. .button-gen-border-hover( @bgcolor ) {
  87. &:hover {
  88. border-color: var( e( @bgcolor ) );
  89. background: var( e( @bgcolor ) );
  90. color: var( e( "@{bgcolor}-hc" ) );
  91. }
  92. }
  93. .button-gen-underline-hover( @bgcolor ) {
  94. &:hover {
  95. color: var( e( @bgcolor ) );
  96. border-color: var( e( @bgcolor ) );
  97. }
  98. }
  99. .button-gen-hover-sc( @bgcolor ) {
  100. &.button-solid {
  101. .button-gen-hover( @bgcolor );
  102. }
  103. &.button-border {
  104. .button-gen-border-hover( @bgcolor );
  105. }
  106. &.button-underline {
  107. .button-gen-underline-hover( @bgcolor );
  108. }
  109. }
  110. /////////////////////////////////////////////////////
  111. // submit buttons and a catch-all selector which may style some plugins
  112. .button,
  113. input[type=button],
  114. input[type=submit] {
  115. .button-gen-solid();
  116. .button-gen-common();
  117. .button-gen( '--vamtam-accent-color-1' );
  118. .button-gen-hover( '--vamtam-accent-color-6' );
  119. }
  120. // actual buttons below
  121. .vamtam-button {
  122. .button-gen-common-sc();
  123. &.accent1 { .button-gen-sc( '--vamtam-accent-color-1' ); }
  124. &.accent2 { .button-gen-sc( '--vamtam-accent-color-2' ); }
  125. &.accent3 { .button-gen-sc( '--vamtam-accent-color-3' ); }
  126. &.accent4 { .button-gen-sc( '--vamtam-accent-color-4' ); }
  127. &.accent5 { .button-gen-sc( '--vamtam-accent-color-5' ); }
  128. &.accent6 { .button-gen-sc( '--vamtam-accent-color-6' ); }
  129. &.accent7 { .button-gen-sc( '--vamtam-accent-color-7' ); }
  130. &.accent8 { .button-gen-sc( '--vamtam-accent-color-8' ); }
  131. &.hover-accent1 { .button-gen-hover-sc( '--vamtam-accent-color-1' ); }
  132. &.hover-accent2 { .button-gen-hover-sc( '--vamtam-accent-color-2' ); }
  133. &.hover-accent3 { .button-gen-hover-sc( '--vamtam-accent-color-3' ); }
  134. &.hover-accent4 { .button-gen-hover-sc( '--vamtam-accent-color-4' ); }
  135. &.hover-accent5 { .button-gen-hover-sc( '--vamtam-accent-color-5' ); }
  136. &.hover-accent6 { .button-gen-hover-sc( '--vamtam-accent-color-6' ); }
  137. &.hover-accent7 { .button-gen-hover-sc( '--vamtam-accent-color-7' ); }
  138. &.hover-accent8 { .button-gen-hover-sc( '--vamtam-accent-color-8' ); }
  139. }
  140. /* RevSLider Buttons */
  141. .rev-btn.rev-withicon i.vamtam-arrow-right-sample,
  142. .rev-btn.rev-withicon i.vamtam-arrow-left-sample,
  143. .rev-btn.rev-withicon i.vamtam-arrow-top-sample,
  144. .rev-btn.rev-withicon i.vamtam-arrow-bottom-sample {
  145. margin: 0px !important;
  146. font-size: 24px;
  147. font-family: theme;
  148. }
  149. .vamtam-arrow-left-sample:before {
  150. content: icon( vamtam-theme-arrow-left-sample );
  151. }
  152. .vamtam-arrow-right-sample:before {
  153. content: icon( vamtam-theme-arrow-right-sample );
  154. }
  155. .vamtam-arrow-top-sample:before {
  156. content: icon( vamtam-theme-arrow-top-sample );
  157. }
  158. .vamtam-arrow-bottom-sample:before {
  159. content: icon( vamtam-theme-arrow-bottom-sample );
  160. }
  161. /* Underline buttons */