calendar.wxss 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. .t-float-left {
  2. float: left;
  3. }
  4. .t-float-right {
  5. float: right;
  6. }
  7. @keyframes tdesign-fade-out {
  8. from {
  9. opacity: 1;
  10. }
  11. to {
  12. opacity: 0;
  13. }
  14. }
  15. .hotspot-expanded.relative {
  16. position: relative;
  17. }
  18. .hotspot-expanded::after {
  19. content: '';
  20. display: block;
  21. position: absolute;
  22. left: 0;
  23. top: 0;
  24. right: 0;
  25. bottom: 0;
  26. transform: scale(1.5);
  27. }
  28. .t-calendar {
  29. width: inherit;
  30. position: relative;
  31. z-index: 9999;
  32. background: var(--td-calendar-bg-color, var(--td-bg-color-container, var(--td-font-white-1, #ffffff)));
  33. overflow-x: hidden;
  34. }
  35. .t-calendar--popup {
  36. border-top-left-radius: var(--td-calendar-radius, 24rpx);
  37. border-top-right-radius: var(--td-calendar-radius, 24rpx);
  38. }
  39. .t-calendar__title {
  40. display: flex;
  41. align-items: center;
  42. justify-content: center;
  43. font-size: var(--td-calendar-title-font-size, 18px);
  44. font-weight: 600;
  45. color: var(--td-calendar-title-color, var(--td-text-color-primary, var(--td-font-gray-1, rgba(0, 0, 0, 0.9))));
  46. height: 52rpx;
  47. padding: 32rpx;
  48. }
  49. .t-calendar__title:focus {
  50. outline: 0;
  51. }
  52. .t-calendar__close-btn {
  53. position: absolute;
  54. top: 32rpx;
  55. right: 32rpx;
  56. margin: -24rpx;
  57. padding: 24rpx;
  58. color: var(--td-calendar-title-color, var(--td-text-color-primary, var(--td-font-gray-1, rgba(0, 0, 0, 0.9))));
  59. }
  60. .t-calendar__days {
  61. display: grid;
  62. grid-template-columns: repeat(7, 1fr);
  63. grid-column-gap: 8rpx;
  64. padding: 0 32rpx;
  65. text-align: center;
  66. line-height: 92rpx;
  67. }
  68. .t-calendar__days-item {
  69. height: 92rpx;
  70. font-size: 28rpx;
  71. color: var(--td-calendar-days-color, var(--td-text-color-secondary, var(--td-font-gray-2, rgba(0, 0, 0, 0.6))));
  72. }
  73. .t-calendar__content {
  74. min-height: 400rpx;
  75. display: flex;
  76. flex-direction: column;
  77. }
  78. .t-calendar__month {
  79. font-size: 28rpx;
  80. color: var(--td-calendar-title-color, var(--td-text-color-primary, var(--td-font-gray-1, rgba(0, 0, 0, 0.9))));
  81. font-weight: 600;
  82. padding: 32rpx 0 0;
  83. }
  84. .t-calendar__months {
  85. height: 712rpx;
  86. padding: 0 32rpx 32rpx;
  87. box-sizing: border-box;
  88. }
  89. .t-calendar__months::-webkit-scrollbar {
  90. display: none;
  91. }
  92. .t-calendar__dates {
  93. flex: 1;
  94. display: grid;
  95. grid-template-columns: repeat(7, 1fr);
  96. grid-column-gap: 8rpx;
  97. }
  98. .t-calendar__dates-item {
  99. position: relative;
  100. display: flex;
  101. align-items: center;
  102. justify-content: center;
  103. font-size: 32rpx;
  104. border-radius: var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx));
  105. height: 120rpx;
  106. line-height: 48rpx;
  107. font-weight: 600;
  108. margin-top: 16rpx;
  109. color: var(--td-calendar-title-color, var(--td-text-color-primary, var(--td-font-gray-1, rgba(0, 0, 0, 0.9))));
  110. cursor: pointer;
  111. -webkit-tap-highlight-color: transparent;
  112. -webkit-user-select: none;
  113. user-select: none;
  114. }
  115. .t-calendar__dates-item-prefix,
  116. .t-calendar__dates-item-suffix {
  117. position: absolute;
  118. font-size: 20rpx;
  119. line-height: 32rpx;
  120. width: 100%;
  121. text-align: center;
  122. font-weight: 400;
  123. }
  124. .t-calendar__dates-item-prefix {
  125. top: 8rpx;
  126. }
  127. .t-calendar__dates-item-suffix {
  128. bottom: 8rpx;
  129. color: var(--td-calendar-item-suffix-color, var(--td-text-color-placeholder, var(--td-font-gray-3, rgba(0, 0, 0, 0.4))));
  130. }
  131. .t-calendar__dates-item-suffix--selected,
  132. .t-calendar__dates-item-suffix--start,
  133. .t-calendar__dates-item-suffix--end {
  134. color: var(--td-calendar-selected-color, var(--td-text-color-anti, var(--td-font-white-1, #ffffff)));
  135. }
  136. .t-calendar__dates-item-suffix--disabled {
  137. color: var(--td-calendar-item-disabled-color, var(--td-text-color-disabled, var(--td-font-gray-4, rgba(0, 0, 0, 0.26))));
  138. }
  139. .t-calendar__dates-item--selected,
  140. .t-calendar__dates-item--start,
  141. .t-calendar__dates-item--end {
  142. background: var(--td-calendar-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)));
  143. color: var(--td-calendar-selected-color, var(--td-text-color-anti, var(--td-font-white-1, #ffffff)));
  144. border-radius: var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx));
  145. }
  146. .t-calendar__dates-item--start {
  147. border-radius: var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx)) 0 0 var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx));
  148. }
  149. .t-calendar__dates-item--end {
  150. border-radius: 0 var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx)) var(--td-calendar-selected-border-radius, var(--td-radius-default, 12rpx)) 0;
  151. }
  152. .t-calendar__dates-item--start + .t-calendar__dates-item--end::before {
  153. content: '';
  154. display: block;
  155. position: absolute;
  156. top: 0;
  157. width: 8rpx;
  158. height: 100%;
  159. background: var(--td-calendar-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)));
  160. }
  161. .t-calendar__dates-item--start + .t-calendar__dates-item--end:before {
  162. left: -8rpx;
  163. }
  164. .t-calendar__dates-item--centre {
  165. border-radius: 0;
  166. background-color: var(--td-calendar-item-centre-color, var(--td-brand-color-light, var(--td-primary-color-1, #f2f3ff)));
  167. }
  168. .t-calendar__dates-item--centre::before,
  169. .t-calendar__dates-item--centre::after {
  170. content: '';
  171. display: block;
  172. position: absolute;
  173. top: 0;
  174. width: 8rpx;
  175. height: 100%;
  176. background-color: var(--td-calendar-item-centre-color, var(--td-brand-color-light, var(--td-primary-color-1, #f2f3ff)));
  177. }
  178. .t-calendar__dates-item--centre:before {
  179. left: -8rpx;
  180. }
  181. .t-calendar__dates-item--centre:after {
  182. right: -8rpx;
  183. }
  184. .t-calendar__dates-item--disabled {
  185. color: var(--td-calendar-item-disabled-color, var(--td-text-color-disabled, var(--td-font-gray-4, rgba(0, 0, 0, 0.26))));
  186. cursor: default;
  187. }
  188. .t-calendar__footer {
  189. padding: 32rpx;
  190. }
  191. .t-calendar-switch-mode--none > .t-calendar__months {
  192. height: 60vh;
  193. }
  194. .t-calendar-header {
  195. display: flex;
  196. justify-content: space-between;
  197. align-items: center;
  198. line-height: 44rpx;
  199. }
  200. .t-calendar-header__with-action {
  201. padding: 0rpx 32rpx 16rpx 32rpx;
  202. box-sizing: border-box;
  203. position: relative;
  204. }
  205. .t-calendar-header__with-action::after {
  206. content: '';
  207. display: block;
  208. position: absolute;
  209. top: unset;
  210. bottom: 0;
  211. left: unset;
  212. right: unset;
  213. background-color: var(--td-border-color, var(--td-gray-color-3, #e7e7e7));
  214. }
  215. .t-calendar-header__with-action::after {
  216. height: 1px;
  217. left: 0;
  218. right: 0;
  219. transform: scaleY(0.5);
  220. }
  221. .t-calendar-header__with-action .t-calendar-header__title {
  222. flex: 1;
  223. text-align: center;
  224. font-size: 28rpx;
  225. font-weight: 600;
  226. }
  227. .t-calendar-header__action {
  228. display: flex;
  229. font-size: 40rpx;
  230. color: var(--td-calendar-switch-mode-icon-color, var(--td-text-color-secondary, var(--td-font-gray-2, rgba(0, 0, 0, 0.6))));
  231. }
  232. .t-calendar-header__icon {
  233. padding: 16rpx;
  234. }
  235. .t-calendar-header__icon--disabled {
  236. color: var(--td-calendar-switch-mode-icon-disabled-color, var(--td-text-color-disabled, var(--td-font-gray-4, rgba(0, 0, 0, 0.26))));
  237. }
  238. .t-calendar-header__title {
  239. text-align: left;
  240. }