input.scss 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. .cl-input {
  2. display: flex;
  3. height: 70rpx;
  4. width: 100%;
  5. vertical-align: middle;
  6. position: relative;
  7. border-radius: 8rpx;
  8. box-sizing: border-box;
  9. transition: border-color 0.2s;
  10. padding: 0 20rpx;
  11. background-color: #fff;
  12. &--focus {
  13. border-color: rgba($cl-color-primary, 0.7);
  14. }
  15. &__wrap {
  16. display: flex;
  17. align-items: center;
  18. flex: 1;
  19. height: 100%;
  20. position: relative;
  21. }
  22. &__inner {
  23. height: 100%;
  24. flex: 1;
  25. font-size: 26rpx;
  26. border: 0;
  27. padding: 0;
  28. outline: none;
  29. background-color: transparent;
  30. }
  31. &__prepend,
  32. &__append {
  33. display: flex;
  34. align-items: center;
  35. font-size: 26rpx;
  36. }
  37. &__prepend {
  38. margin-right: 20rpx;
  39. }
  40. &__append {
  41. margin-left: 20rpx;
  42. }
  43. &__clear,
  44. &__icon {
  45. display: inline-block;
  46. font-size: 34rpx;
  47. color: #999;
  48. cursor: pointer;
  49. }
  50. &__clear {
  51. color: #c1c1c1;
  52. margin-left: 20rpx;
  53. }
  54. &:not(.is-disabled) {
  55. -webkit-box-shadow: 0 0 0 1000px transparent inset;
  56. }
  57. &--prefix,
  58. &--suffix {
  59. flex-shrink: 0;
  60. .cl-input__icon {
  61. position: absolute;
  62. text-align: center;
  63. }
  64. }
  65. &--prefix {
  66. .cl-input__wrap {
  67. padding-left: 46rpx;
  68. }
  69. .cl-input__icon {
  70. left: 0;
  71. }
  72. }
  73. &--suffix {
  74. .cl-input__wrap {
  75. padding-right: 46rpx;
  76. }
  77. .cl-input__icon {
  78. right: 0;
  79. }
  80. }
  81. &.is-disabled {
  82. background-color: #f5f7fa;
  83. }
  84. &.is-border {
  85. border: 1rpx solid #dcdfe6;
  86. }
  87. &.is-disabled {
  88. background-color: #f5f7fa;
  89. .cl-input__inner {
  90. background-color: #f5f7fa !important;
  91. color: #c0c4cc;
  92. }
  93. }
  94. &.is-round {
  95. border-radius: 100rpx;
  96. .cl-input__inner {
  97. border-radius: 100rpx;
  98. }
  99. }
  100. }
  101. .cl-form-item--error {
  102. input {
  103. border-color: $cl-color-error;
  104. }
  105. }