index.scss 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. @import '@/uni_modules/lime-style/index.scss';
  2. @import '@/uni_modules/lime-style/mixins/utilities.scss';
  3. @import '@/uni_modules/lime-style/mixins/hairline.scss';
  4. /* #ifdef uniVersion >= 4.75 */
  5. $use-css-var: true;
  6. /* #endif */
  7. $textarea: #{$prefix}-textarea;
  8. $textarea-padding-y: create-var(textarea-padding-y, $spacer); // 文本框垂直方向间距
  9. $textarea-padding-x: create-var(textarea-padding-x, $spacer); // 文本框水平方向间距
  10. /* #ifdef APP-IOS */
  11. $textarea-text-line-height: create-var(textarea-text-line-height, 22px);//48rpx); // 输入框文本行高
  12. $textarea-label-line-height: create-var(textarea-label-line-height, 24px);// 44rpx); // 标签文本行高
  13. $textarea-placeholder-line-height: create-var(textarea-label-line-height, 20px);// 44rpx); // 标签文本行高
  14. /* #endif */
  15. /* #ifdef APP-HARMONY */
  16. $textarea-text-line-height: create-var(textarea-text-line-height, 24px);//48rpx); // 输入框文本行高
  17. $textarea-label-line-height: create-var(textarea-label-line-height, 29px);// 44rpx); // 标签文本行高
  18. /* #endif */
  19. /* #ifndef APP-IOS || APP-HARMONY */
  20. $textarea-text-line-height: create-var(textarea-text-line-height, 24px);//48rpx); // 输入框文本行高
  21. $textarea-label-line-height: create-var(textarea-label-line-height, 22px);// 44rpx); // 标签文本行高
  22. /* #endif */
  23. $textarea-label-width: create-var(textarea-label-width, 64px); // 标签文本行高
  24. $textarea-label-padding-right: create-var(textarea-label-padding-right, $spacer);
  25. $textarea-label-padding-bottom: create-var(textarea-label-padding-bottom, $spacer-xs);
  26. $textarea-indicator-text-line-height: create-var(textarea-indicator-text-line-height,20px); // 计数器文本行高
  27. $textarea-indicator-text-padding-top: create-var(textarea-indicator-text-padding-top, $spacer-xs); // 计数器文本顶部间距
  28. $textarea-indicator-text-align: create-var(textarea-indicator-text-align, right); // 计数器文本对齐方式
  29. $textarea-border-width: create-var(textarea-border-width, 1px); // 文本框边框大小
  30. $textarea-indicator-text-font-size: create-var(textarea-indicator-text-font-size, $spacer-sm); // 计数器文本大小
  31. $textarea-label-font-size: create-var(textarea-label-font-size, $font-size); // 标签文本大小
  32. $textarea-label-large-font-size: create-var(textarea-label-large-font-size, $font-size-md); // 标签文本大小
  33. $textarea-text-font-size: create-var(textarea-text-font-size, $font-size-md); ; // 输入框文本大小
  34. $textarea-placeholder-font-size: create-var(textarea-placeholder-font-size, $font-size-md); ; // 占位符文本大小
  35. // 文本框背景颜色
  36. $textarea-bg-color: create-var(textarea-bg-color, $bg-color-container);
  37. // 占位符文本颜色
  38. $textarea-placeholder-color: create-var(textarea-placeholder-color, $text-color-3);
  39. // 输入框文本颜色
  40. $textarea-text-color: create-var(textarea-text-color, $text-color-1);
  41. // 标签文本颜色
  42. $textarea-label-color: create-var(textarea-label-color, $text-color-1);
  43. // 计数器文本颜色
  44. $textarea-indicator-text-color: create-var(textarea-indicator-text-color, $text-color-3);
  45. // 文本框圆角大小
  46. $textarea-border-radius: create-var(textarea-border-radius, $border-radius);
  47. // 文本框边框颜色
  48. $textarea-border-color: create-var(textarea-border-color, $border-color-1);
  49. $textarea-focused-border-color: create-var(textarea-focused-border-color, $primary-color);
  50. // 文本框禁用状态时的输入文本颜色
  51. $textarea-disabled-text-color: create-var(textarea-disabled-text-color, $text-color-4);
  52. $textarea-border-left-space: create-var(textarea-border-left-space, $spacer);
  53. $textarea-border-right-space: create-var(textarea-border-right-space, 0);
  54. $textarea-classic-padding-x: create-var(textarea-classic-padding-x, $spacer);
  55. $textarea-classic-padding-y: create-var(textarea-classic-padding-y, $spacer-sm);
  56. .#{$textarea} {
  57. @include flex;
  58. box-sizing: border-box;
  59. // padding: $textarea-padding-y $textarea-padding-x;
  60. @include padding($textarea-padding-y $textarea-padding-x);
  61. background-color: $textarea-bg-color;
  62. &--horizontal {
  63. flex-direction: row;
  64. }
  65. &--vertical {
  66. @include flex-column;
  67. }
  68. //:not(:empty)
  69. &__label{
  70. color: $textarea-label-color;
  71. flex-shrink: 0;
  72. line-height: $textarea-label-line-height;
  73. // background-color: azure;
  74. overflow: hidden;
  75. white-space: nowrap;
  76. text-overflow: ellipsis;
  77. &--vertical {
  78. font-size: $textarea-label-font-size;
  79. padding-bottom: $textarea-label-padding-bottom;
  80. }
  81. &--horizontal {
  82. font-size: $textarea-label-large-font-size;
  83. margin-right: $textarea-label-padding-right;
  84. // padding-bottom: $textarea-label-padding-bottom;
  85. }
  86. }
  87. &__wrapper {
  88. @include flex;
  89. @include flex-column;
  90. flex: 1;
  91. // width: 100%;
  92. // flex: 1 1 auto;
  93. // background-color: antiquewhite;
  94. overflow: hidden;
  95. &-inner {
  96. // flex: 1;
  97. flex: 1 1 auto;
  98. width: 100%;
  99. box-sizing: border-box;
  100. // width: inherit;
  101. min-width: 0;
  102. min-height: 20px;
  103. margin: 0;
  104. padding: 0;
  105. text-align: left;
  106. background-color: transparent;
  107. border: 0;
  108. @include resize-none;
  109. font-size: $textarea-text-font-size;
  110. color: $textarea-text-color;
  111. line-height: $textarea-text-line-height;
  112. }
  113. }
  114. &__placeholder {
  115. color: $textarea-placeholder-color;
  116. font-size: $textarea-placeholder-font-size;
  117. /* #ifdef APP-IOS */
  118. line-height: $textarea-placeholder-line-height;
  119. /* #endif */
  120. /* #ifndef APP-IOS */
  121. line-height: $textarea-text-line-height;
  122. /* #endif */
  123. /* #ifndef APP || WEB */
  124. position: absolute;
  125. left: 0;
  126. top: 0;
  127. /* #endif */
  128. }
  129. &__indicator {
  130. flex-shrink: 0;
  131. color: $textarea-indicator-text-color;
  132. font-size: $textarea-indicator-text-font-size;
  133. text-align: $textarea-indicator-text-align;
  134. line-height: $textarea-indicator-text-line-height;
  135. padding-top: $textarea-indicator-text-padding-top;
  136. }
  137. /* #ifndef APP-ANDROID || APP-IOS || APP-HARMONY */
  138. &__border {
  139. position: absolute;
  140. left: $textarea-border-left-space;
  141. right: $textarea-border-right-space;
  142. bottom: 0;
  143. height: 1rpx;
  144. background-color: $textarea-border-color;
  145. }
  146. /* #endif */
  147. &--border {
  148. position: relative;
  149. /* #ifdef APP-HARMONY */
  150. // border-bottom: 0.5px solid $textarea-border-color;
  151. /* #endif */
  152. /* #ifndef APP-ANDROID || APP-IOS || APP-HARMONY */
  153. &::after {
  154. @include hairline-bottom($textarea-border-color, $textarea-border-left-space, $textarea-border-right-space)
  155. }
  156. /* #endif */
  157. &-focused {
  158. border-bottom-color: $textarea-focused-border-color;
  159. }
  160. // border-radius: $textarea-border-radius;
  161. // border: $textarea-border-width solid $textarea-border-color;
  162. }
  163. .is-disabled {
  164. color: $textarea-disabled-text-color;
  165. }
  166. &--classic {
  167. // padding: $textarea-classic-padding;
  168. @include padding($textarea-classic-padding-y $textarea-classic-padding-x);
  169. // border-radius: $textarea-border-radius;
  170. @include border-radius($textarea-border-radius);
  171. // border: 0.5px solid $textarea-border-color;
  172. border-width: 0.5px;
  173. border-style: solid;
  174. border-color: $textarea-border-color;
  175. &-focused {
  176. border-color: $textarea-focused-border-color;
  177. }
  178. // align-items: center;
  179. // &-default {
  180. // border-color: $textarea-border-color
  181. // }
  182. // &-error {
  183. // border-color: $textarea-error-tips-color
  184. // }
  185. // &-success {
  186. // border-color: $textarea-success-tips-color
  187. // }
  188. // &-warning {
  189. // border-color: $textarea-warning-tips-color
  190. // }
  191. &-disabled {
  192. // background: $textarea-disabled-bg-color
  193. }
  194. }
  195. }