rtl.less 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. .@{picker-prefix-cls} {
  2. &-rtl {
  3. direction: rtl;
  4. }
  5. &-suffix {
  6. .@{picker-prefix-cls}-rtl & {
  7. margin-right: (@padding-xs / 2);
  8. margin-left: 0;
  9. }
  10. }
  11. &-clear {
  12. .@{picker-prefix-cls}-rtl & {
  13. right: auto;
  14. left: 0;
  15. }
  16. }
  17. &-separator {
  18. .@{picker-prefix-cls}-rtl & {
  19. transform: rotate(180deg);
  20. }
  21. }
  22. &-header {
  23. &-view {
  24. button {
  25. &:not(:first-child) {
  26. .@{picker-prefix-cls}-panel-rtl & {
  27. margin-right: @padding-xs;
  28. margin-left: 0;
  29. }
  30. }
  31. }
  32. }
  33. }
  34. // ======================== Range =========================
  35. &-range {
  36. // Clear
  37. .@{picker-prefix-cls}-clear {
  38. .@{picker-prefix-cls}-rtl& {
  39. right: auto;
  40. left: @input-padding-horizontal-base;
  41. }
  42. }
  43. // Active bar
  44. .@{picker-prefix-cls}-active-bar {
  45. .@{picker-prefix-cls}-rtl& {
  46. margin-right: @input-padding-horizontal-base;
  47. margin-left: 0;
  48. }
  49. }
  50. &.@{picker-prefix-cls}-small {
  51. .@{picker-prefix-cls}-active-bar {
  52. .@{picker-prefix-cls}-rtl& {
  53. margin-right: @input-padding-horizontal-sm;
  54. }
  55. }
  56. }
  57. }
  58. // ======================== Ranges ========================
  59. &-ranges {
  60. .@{picker-prefix-cls}-dropdown-rtl & {
  61. text-align: right;
  62. }
  63. .@{picker-prefix-cls}-ok {
  64. .@{picker-prefix-cls}-dropdown-rtl & {
  65. float: left;
  66. margin-right: @padding-xs;
  67. margin-left: 0;
  68. }
  69. }
  70. }
  71. // ======================== Panel ========================
  72. &-panel {
  73. &-rtl {
  74. direction: rtl;
  75. }
  76. }
  77. &-prev-icon,
  78. &-super-prev-icon {
  79. .@{picker-prefix-cls}-panel-rtl & {
  80. transform: rotate(135deg);
  81. }
  82. }
  83. &-next-icon,
  84. &-super-next-icon {
  85. .@{picker-prefix-cls}-panel-rtl & {
  86. transform: rotate(-45deg);
  87. }
  88. }
  89. &-cell {
  90. .picker-cell-inner(~'@{picker-cell-inner-cls}');
  91. }
  92. // ======================== Body ==========================
  93. .picker-cell-inner(@cellClassName) {
  94. .@{cellClassName} {
  95. position: relative;
  96. z-index: 2;
  97. display: inline-block;
  98. min-width: @picker-panel-cell-height;
  99. height: @picker-panel-cell-height;
  100. line-height: @picker-panel-cell-height;
  101. border-radius: @border-radius-base;
  102. transition: background @animation-duration-slow, border @animation-duration-slow;
  103. }
  104. &-in-view&-range-start::before {
  105. .@{picker-prefix-cls}-panel-rtl & {
  106. right: 50%;
  107. left: 0;
  108. }
  109. }
  110. &-in-view&-range-end::before {
  111. .@{picker-prefix-cls}-panel-rtl & {
  112. right: 0;
  113. left: 50%;
  114. }
  115. }
  116. &-in-view&-range-start&-range-end::before {
  117. .@{picker-prefix-cls}-panel-rtl & {
  118. right: 50%;
  119. left: 50%;
  120. }
  121. }
  122. .@{picker-prefix-cls}-date-panel
  123. &-in-view&-in-range&-range-hover-start
  124. .@{cellClassName}::after {
  125. .@{picker-prefix-cls}-panel-rtl & {
  126. right: 0;
  127. left: -5px - @border-width-base;
  128. }
  129. }
  130. .@{picker-prefix-cls}-date-panel &-in-view&-in-range&-range-hover-end .@{cellClassName}::after {
  131. .@{picker-prefix-cls}-panel-rtl & {
  132. right: -5px - @border-width-base;
  133. left: 0;
  134. }
  135. }
  136. // Hover with range start & end
  137. &-range-hover&-range-start::after {
  138. .@{picker-prefix-cls}-panel-rtl & {
  139. right: 0;
  140. left: 50%;
  141. }
  142. }
  143. &-range-hover&-range-end::after {
  144. .@{picker-prefix-cls}-panel-rtl & {
  145. right: 50%;
  146. left: 0;
  147. }
  148. }
  149. // range start border-radius
  150. &-in-view&-range-start:not(&-range-start-single):not(&-range-end) .@{cellClassName} {
  151. .@{picker-prefix-cls}-panel-rtl & {
  152. border-radius: 0 @border-radius-base @border-radius-base 0;
  153. }
  154. }
  155. // range end border-radius
  156. &-in-view&-range-end:not(&-range-end-single):not(&-range-start) .@{cellClassName} {
  157. .@{picker-prefix-cls}-panel-rtl & {
  158. border-radius: @border-radius-base 0 0 @border-radius-base;
  159. }
  160. }
  161. // Edge start
  162. tr > &-in-view&-range-hover:not(&-selected):first-child::after,
  163. &-in-view&-start&-range-hover-edge-start&-range-hover-edge-start-near-range::after,
  164. &-in-view&-range-hover-edge-start:not(&-range-hover-edge-start-near-range)::after,
  165. &-in-view&-range-hover-start::after {
  166. .@{picker-prefix-cls}-panel-rtl & {
  167. right: 6px;
  168. left: 0;
  169. border-right: @border-width-base dashed @picker-date-hover-range-border-color;
  170. border-left: none;
  171. border-radius: 0 @border-radius-base @border-radius-base 0;
  172. }
  173. }
  174. // Edge end
  175. tr > &-in-view&-range-hover:not(&-selected):last-child::after,
  176. &-in-view&-end&-range-hover-edge-end&-range-hover-edge-end-near-range::after,
  177. &-in-view&-range-hover-edge-end:not(&-range-hover-edge-end-near-range)::after,
  178. &-in-view&-range-hover-end::after {
  179. .@{picker-prefix-cls}-panel-rtl & {
  180. right: 0;
  181. left: 6px;
  182. border-right: none;
  183. border-left: @border-width-base dashed @picker-date-hover-range-border-color;
  184. border-radius: @border-radius-base 0 0 @border-radius-base;
  185. }
  186. }
  187. tr > &-in-view&-range-hover-start:last-child::after,
  188. tr > &-in-view&-range-hover-end:first-child::after,
  189. &-in-view&-start&-range-hover-edge-start:not(&-range-hover)::after,
  190. &-in-view&-start&-range-hover-end&-range-hover-edge-start:not(&-range-hover)::after,
  191. &-in-view&-end&-range-hover-start&-range-hover-edge-end:not(&-range-hover)::after,
  192. tr > &-in-view&-start&-range-hover&-range-hover-edge-start:last-child::after,
  193. tr > &-in-view&-end&-range-hover&-range-hover-edge-end:first-child::after {
  194. .@{picker-prefix-cls}-panel-rtl & {
  195. right: 6px;
  196. left: 6px;
  197. border-right: @border-width-base dashed @picker-date-hover-range-border-color;
  198. border-left: @border-width-base dashed @picker-date-hover-range-border-color;
  199. border-radius: @border-radius-base;
  200. }
  201. }
  202. }
  203. // ======================== Footer ========================
  204. &-footer {
  205. &-extra {
  206. .@{picker-prefix-cls}-dropdown-rtl & {
  207. direction: rtl;
  208. text-align: right;
  209. }
  210. }
  211. }
  212. // ====================== Time Panel ======================
  213. &-time-panel {
  214. .@{picker-prefix-cls}-panel-rtl & {
  215. direction: ltr;
  216. }
  217. }
  218. }