Button.less 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. /* Button | DropDownButton | ComboButton | ToggleButton
  2. *
  3. * Styling Buttons mainly includes:
  4. *
  5. * 1. Containers
  6. * .dijitButton
  7. * .dijitDropDownButton
  8. * .dijitComboButton
  9. * .dijitButtonNode - common button/arrow wrapper shared across all three button types
  10. *
  11. * 2. Button text
  12. * .dijitButtonText
  13. *
  14. * 3. Arrows - only for DropDownButton and ComboButton
  15. * There are total four directions arrows - down, left, right, up:
  16. * .dijitArrowButtonInner - down arrow by default
  17. * .dijitLeftArrowButton .dijitArrowButtonInner - left arrow
  18. * .dijitRightArrowButton .dijitArrowButtonInner - right arrow
  19. * .dijitUpArrowButton .dijitArrowButtonInner - up arrow
  20. *
  21. * 4. States - Hover, Active, Disabled, e.g.
  22. * .dijitButtonHover .dijitButtonNode
  23. * .dijitButtonActive .dijitButtonNode
  24. * .dijitButtonDisabled .dijitButtonNode
  25. *
  26. * .dijitDisabled .dijitArrowButtonInner - disabled arrow states
  27. */
  28. @import "../variables";
  29. .claro .dijitButtonNode {
  30. /* rules for dijit.form.*Button widgets and arrow nodes on ComboBox, Spinner etc. */
  31. .transition-property(background-color);
  32. .transition-duration(.3s);
  33. }
  34. .claro .dijitButton .dijitButtonNode,
  35. .claro .dijitDropDownButton .dijitButtonNode,
  36. .claro .dijitComboButton .dijitButtonNode,
  37. .claro .dijitToggleButton .dijitButtonNode {
  38. /* rules for the dijit.form.*Button widgets (see also ComboButton section below) */
  39. border: 1px solid @button-border-color;
  40. padding:2px 4px 4px 4px;
  41. background-image: url("images/button.png");
  42. background-position: center top;
  43. background-repeat: repeat-x;
  44. background-color: @button-background-color;
  45. .border-radius(@button-border-radius);
  46. .box-shadow(0 1px 1px rgba(0,0,0,0.15));
  47. }
  48. .claro .dijitComboButton .dijitArrowButton {
  49. border-left-width: 0;
  50. padding: 4px 2px 4px 2px; /* TODO: still needed? */
  51. }
  52. /*arrow styles for down/up/left/right directions*/
  53. .claro .dijitArrowButtonInner {
  54. width: 15px;
  55. height: 15px;
  56. margin: 0 auto;
  57. background-image:url("images/buttonArrows.png");
  58. background-repeat:no-repeat;
  59. background-position:-51px 53%;
  60. }
  61. .claro .dijitLeftArrowButton .dijitArrowButtonInner {
  62. background-position: -77px 53%;
  63. }
  64. .claro .dijitRightArrowButton .dijitArrowButtonInner {
  65. background-position: -26px 53%;
  66. }
  67. .claro .dijitUpArrowButton .dijitArrowButtonInner {
  68. background-position: 0 53%;
  69. }
  70. .claro .dijitDisabled .dijitArrowButtonInner {
  71. background-position: -151px 53%;
  72. }
  73. .claro .dijitDisabled .dijitLeftArrowButton .dijitArrowButtonInner {
  74. background-position: -177px 53%;
  75. }
  76. .claro .dijitDisabled .dijitRightArrowButton .dijitArrowButtonInner {
  77. background-position: -126px 53%;
  78. }
  79. .claro .dijitDisabled .dijitUpArrowButton .dijitArrowButtonInner {
  80. background-position: -100px 53%;
  81. }
  82. .claro .dijitButtonText {
  83. padding: 0 0.3em;
  84. text-align: center;
  85. }
  86. /* hover status */
  87. .claro .dijitButtonHover .dijitButtonNode,
  88. .claro .dijitDropDownButtonHover .dijitButtonNode,
  89. .claro .dijitComboButton .dijitButtonNodeHover,
  90. .claro .dijitComboButton .dijitDownArrowButtonHover,
  91. .claro .dijitToggleButtonHover .dijitButtonNode {
  92. background-color: @button-hovered-background-color;
  93. color:@text-color;
  94. .transition-duration(.2s);
  95. }
  96. /* checked status */
  97. .claro .dijitButtonActive .dijitButtonNode,
  98. .claro .dijitDropDownButtonActive .dijitButtonNode,
  99. .claro .dijitComboButtonActive .dijitButtonNode,
  100. .claro .dijitToggleButtonActive .dijitButtonNode {
  101. background-color: @button-pressed-background-color;
  102. .box-shadow(0 0 0 rgba(0,0,0,0));
  103. .transition-duration(.1s);
  104. }
  105. /* disabled status */
  106. .claro .dijitButtonDisabled,
  107. .claro .dijitDropDownButtonDisabled,
  108. .claro .dijitComboButtonDisabled,
  109. .claro .dijitToggleButtonDisabled {
  110. background-image: none;
  111. outline: none;
  112. }
  113. .claro .dijitButtonDisabled .dijitButtonNode,
  114. .claro .dijitDropDownButtonDisabled .dijitButtonNode,
  115. .claro .dijitComboButtonDisabled .dijitButtonNode,
  116. .claro .dijitToggleButtonDisabled .dijitButtonNode {
  117. background-position:0 -149px;
  118. background-color: @disabled-background-color;
  119. border: solid 1px @disabled-border-color;
  120. color: @disabled-text-color;
  121. .box-shadow(0 0 0 rgba(0,0,0,0));
  122. }
  123. .claro .dijitComboButtonDisabled .dijitArrowButton{
  124. border-left-width: 0;
  125. }
  126. /* for ComboButton */
  127. .claro table.dijitComboButton {
  128. border-collapse: separate; /* override dijit.css so that ComboBox rounded corners work */
  129. }
  130. .dj_ie6 .claro .dijitButtonNode {
  131. background-image: none;
  132. }
  133. .claro .dijitComboButton .dijitStretch {
  134. .border-radius(@button-border-radius 0 0 @button-border-radius);
  135. }
  136. .claro .dijitComboButton .dijitArrowButton {
  137. .border-radius(0 @button-border-radius @button-border-radius 0);
  138. }