Calendar.less 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279
  1. /* Calendar
  2. *
  3. * Styling Calendar mainly includes:
  4. *
  5. * 1. Calendar container
  6. * .dijitCalendar - main container
  7. * .dijitCalendarHover / .dijitCalendarActive - states e.g. hover,active
  8. *
  9. * 2. Month
  10. * .dijitCalendarMonthContainer
  11. * .dijitCalendarMonthLabel
  12. * .dijitCalendarDecrease / .dijitCalendarDecrease - icons for switching to previous/next month
  13. * .dijitCalendarArrowActive .dijitCalendarDecrease - states e.g. hover,active
  14. *
  15. * 3. Date
  16. * .dijitCalendarDayLabelTemplate - week day column header e.g. S M T W T F S
  17. * .dijitCalendarDateTemplate - date label wrapper
  18. * .dijitCalendarPreviousMonth .dijitCalendarDateLabel - special labels for previous or next month
  19. * .dijitCalendarSelectedDate .dijitCalendarDateLabel - styles for selected date
  20. * .dijitCalendarDisabledDate .dijitCalendarDateLabel - styles for disabled date
  21. * .dijitCalendarActiveDate .dijitCalendarDateLabel - states e.g. hover,active
  22. *
  23. * 4. Year
  24. * .dijitCalendarYearContainer
  25. * .dijitCalendarYearLabel
  26. * .dijitCalendarPreviousYear /.dijitCalendarNextYear
  27. * .dijitCalendarNextYearHover / .dijitCalendarPreviousYearHover - states e.g. hover,active
  28. *
  29. * 5. Dropdown Month Menu
  30. * .dijitCalendarMonthMenu - menu container
  31. * .dijitCalendarMonthMenu .dijitCalendarMonthLabel - month label in menu item
  32. * .dijitCalendarMonthMenu .dijitCalendarMonthLabelHover - menu item hover state
  33. */
  34. @import "variables";
  35. .claro .dijitCalendar {
  36. border: solid 1px @border-color;
  37. .border-radius(4px);
  38. // Background color and alpha-gradient
  39. background-color: @calendar-background-color;
  40. background-image: url("images/calendar.png"); // fallback for browsers that don't support CSS gradients
  41. background-repeat: repeat-x; // so bottom of calendar isn't affected by gradient image repeating
  42. .alpha-white-gradient(1, 0px, 0.4, 2px, 0, 100%);
  43. text-align:center;
  44. padding:6px 5px 3px 5px;
  45. }
  46. .dj_ie6 .claro .dijitCalendar {
  47. background-image:none; // because on IE6 background-image overrides background-color
  48. }
  49. .claro .dijitCalendar img {
  50. border:none;
  51. }
  52. .claro .dijitCalendarHover, .claro .dijitCalendar:hover,
  53. .claro .dijitCalendarActive {
  54. /* treat dijitCalendarActive like hover since there's
  55. * no concept of clicking a Calendar as a whole (although you can click things inside the calendar)
  56. */
  57. background-color: @hovered-background-color;
  58. border:solid 1px @hovered-border-color;
  59. }
  60. .claro .dijitCalendar table {
  61. border-collapse: separate; // in case user CSS has set border-collapse: collapse for tables
  62. }
  63. .claro .dijitCalendarMonthContainer th {
  64. text-align:center;
  65. padding-bottom:4px;
  66. vertical-align:middle;
  67. }
  68. .claro .dijitCalendarMonthLabel {
  69. color: @text-color;
  70. font-size: 1.091em;
  71. padding: 0 4px;
  72. }
  73. /* next/previous month arrows */
  74. .claro .dijitCalendarIncrementControl {
  75. width:18px;
  76. height:16px;
  77. background-image: url(@image-calendar-arrows);
  78. background-repeat: no-repeat;
  79. }
  80. .dj_ie6 .claro .dijitCalendarIncrementControl {
  81. background-image: url(@image-calendar-arrows-ie6);
  82. }
  83. .claro .dijitCalendarIncrease {
  84. background-position:-18px 0;
  85. }
  86. .claro .dijitCalendarArrowHover .dijitCalendarDecrease,
  87. .claro .dijitCalendarArrow:hover .dijitCalendarDecrease {
  88. background-position:-36px 0;
  89. }
  90. .claro .dijitCalendarArrowHover .dijitCalendarIncrease,
  91. .claro .dijitCalendarArrow:hover .dijitCalendarIncrease {
  92. background-position:-55px 0;
  93. }
  94. .claro .dijitCalendarArrowActive .dijitCalendarDecrease,
  95. .claro .dijitCalendarArrow:active .dijitCalendarDecrease {
  96. background-position:-72px 0;
  97. }
  98. .claro .dijitCalendarArrowActive .dijitCalendarIncrease,
  99. .claro .dijitCalendarArrow:active .dijitCalendarIncrease {
  100. background-position:-91px 0;
  101. }
  102. .claro .dijitA11ySideArrow {
  103. /* text +/- labels instead of arrow icons, for high contrast mode */
  104. display: none;
  105. }
  106. .claro .dijitCalendarDayLabelTemplate {
  107. padding-bottom:0;
  108. text-align:center;
  109. border-bottom:1px solid @border-color;
  110. padding:0 3px 2px;
  111. }
  112. .claro .dijitCalendarDayLabel {
  113. padding:0 4px 0 4px;
  114. font-weight:bold;
  115. font-size:0.909em;
  116. text-align:center;
  117. color: @text-color;
  118. }
  119. .claro .dijitCalendarDateTemplate {
  120. text-align:center;
  121. background-color:@calendar-currentmonth-background-color;
  122. border-bottom: 1px solid @minor-border-color;
  123. padding-top:0;
  124. font-size:0.909em;
  125. font-family: Arial;
  126. font-weight:bold;
  127. letter-spacing:.05em;
  128. text-align:center;
  129. color: @text-color;
  130. }
  131. .dj_ie6 .claro .dijitCalendarDateTemplate {
  132. background-image: none;
  133. }
  134. .claro .dijitCalendarPreviousMonth,
  135. .claro .dijitCalendarNextMonth {
  136. background-color: @calendar-adjacentmonth-background-color;
  137. background-image:none;
  138. border-bottom:solid 1px @minor-border-color; /* todo: redundant with above .dijitCalendarDateTemplate rule */
  139. }
  140. .claro .dijitCalendarDateTemplate .dijitCalendarDateLabel {
  141. text-decoration:none;
  142. display:block;
  143. padding:3px 5px 3px 4px;
  144. border:solid 1px @calendar-currentmonth-background-color; /* intentionally matches background-color, no visible border until hover/selection */
  145. background-color:rgba(171,212,251,0); /* transparent causes black-flash animation problem on webkit */
  146. .transition-property(background-color, border);
  147. .transition-duration(.35s);
  148. }
  149. .claro .dijitCalendarPreviousMonth .dijitCalendarDateLabel,
  150. .claro .dijitCalendarNextMonth .dijitCalendarDateLabel{
  151. color: @calendar-adjacentmonth-text-color;
  152. border-color: @calendar-adjacentmonth-background-color; /* intentionally matches background-color, no visible border until hover/selection */
  153. }
  154. .claro .dijitCalendarYearContainer {
  155. vertical-align:middle;
  156. }
  157. .claro .dijitCalendarYearControl {
  158. padding: 1px 2px 2px 2px;
  159. }
  160. .claro .dijitCalendarYearLabel {
  161. padding: 2px 0 0 0;
  162. margin: 0;
  163. font-size: 1.17em;
  164. }
  165. .claro .dijitCalendarYearLabel span {
  166. /* trying to center next/current/previous year vertically, doesn't work on IE6/7 though */
  167. vertical-align:middle;
  168. }
  169. .claro .dijitCalendarSelectedYear {
  170. padding:0 3px;
  171. }
  172. .claro .dijitCalendarNextYear,
  173. .claro .dijitCalendarPreviousYear {
  174. padding: 1px 6px 1px 6px;
  175. font-size:0.909em;
  176. }
  177. .claro .dijitCalendarSelectedYear {
  178. font-size:1.091em;
  179. color:@selected-text-color;
  180. }
  181. /* End Normal Calendar Style */
  182. /* Hovered Calendar Style */
  183. .claro .dijitCalendarHoveredDate .dijitCalendarDateLabel,
  184. .claro .dijitCalendarLite .dijitCalendarEnabledDate:hover .dijitCalendarDateLabel {
  185. background-color:@hovered-background-color;
  186. border:solid 1px @hovered-border-color;
  187. color:@hovered-text-color;
  188. .transition-duration(.2s);
  189. }
  190. .claro .dijitCalendarNextYearHover, .claro .dijitCalendarNextYear:hover,
  191. .claro .dijitCalendarPreviousYearHover, .claro .dijitCalendarPreviousYear:hover {
  192. color:@hovered-text-color;
  193. border:solid 1px @calendar-button-hovered-border-color;
  194. padding: 0 5px 0 5px; /* reduced by 1 to make room for border */
  195. background-color: @calendar-button-hovered-background-color;
  196. }
  197. /* End Hovered Calendar Style */
  198. /* Active Calendar Style */
  199. .claro .dijitCalendarNextYearActive, .claro .dijitCalendarNextYear:active
  200. .claro .dijitCalendarPreviousYearActive, .claro .dijitCalendarPreviousYear:active {
  201. border: solid 1px @calendar-button-pressed-border-color;
  202. padding: 0 5px 0 5px; /* reduced by 1 to make room for border */
  203. background-color:@calendar-button-pressed-background-color;
  204. }
  205. .claro .dijitCalendarActiveDate .dijitCalendarDateLabel,
  206. .claro .dijitCalendarEnabledDate:active .dijitCalendarDateLabel {
  207. background-color: @calendar-date-pressed-background-color;
  208. border:solid 1px @calendar-date-pressed-border-color;
  209. .transition-duration(.1s);
  210. }
  211. .dj_ie6 .claro .dijitCalendarActiveDate .dijitCalendarDateLabel {
  212. background-image:none;
  213. }
  214. /* End Active Calendar Style */
  215. /* Selected Calendar Style */
  216. .claro .dijitCalendarSelectedDate .dijitCalendarDateLabel {
  217. color:@selected-text-color;
  218. background-color: @calendar-date-selected-background-color;
  219. border-color: @calendar-date-selected-border-color;
  220. }
  221. /* End Selected Calendar Style */
  222. /* Disabled Calendar Style*/
  223. .claro .dijitCalendarDisabledDate .dijitCalendarDateLabel {
  224. color: @disabled-text-color;
  225. text-decoration:line-through;
  226. }
  227. /* End Disabled Calendar Style */
  228. /* Styling for month DropDownButton */
  229. .claro .dijitCalendar .dijitDropDownButton {
  230. margin: 0;
  231. }
  232. .claro .dijitCalendar .dijitButtonText {
  233. padding: 1px 0 3px;
  234. margin-right:-4px;
  235. }
  236. .claro .dijitCalendar .dijitDropDownButton .dijitButtonNode {
  237. padding: 0 3px 0 2px;
  238. border:solid 1px @border-color;
  239. .box-shadow(0 0 0 rgba(0,0,0,0));
  240. // Override background settings from vanilla .dijitButtonNode. We want to inherit background of Calendar.
  241. background-color: transparent;
  242. background-image: none;
  243. }
  244. .claro .dijitCalendar .dijitDropDownButtonHover .dijitButtonNode,
  245. .claro .dijitCalendar .dijitDropDownButton:hover .dijitButtonNode {
  246. background-color: @calendar-button-hovered-background-color;
  247. border:solid 1px @calendar-button-hovered-border-color;
  248. }
  249. /* Styling for month drop down list */
  250. .claro .dijitCalendarMonthMenu {
  251. border-color: @popup-border-color;
  252. background-color: @menu-background-color;
  253. text-align:center;
  254. background-image: none;
  255. }
  256. .claro .dijitCalendarMonthMenu .dijitCalendarMonthLabel {
  257. border-top: solid 1px @menu-background-color; /* intentionally invisible until hover */
  258. border-bottom: solid 1px @menu-background-color;
  259. padding: 2px 0;
  260. }
  261. .claro .dijitCalendarMonthMenu .dijitCalendarMonthLabelHover,
  262. .claro .dijitCalendarMonthMenu .dijitCalendarMonthLabelActive {
  263. border-color: @hovered-border-color;
  264. border-width:1px 0;
  265. .gradient-and-filter(@hovered-background-color, 70, 0);
  266. }