Repositorio del curso CCOM4030 el semestre B91 del proyecto Artesanías con el Instituto de Cultura

text-input.css 4.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. :root {
  2. --text-input-font-size: 16px;
  3. --text-input-height: 31px;
  4. --text-input-border-color: var(--input-border-color);
  5. --material-text-input-font-size: 16px;
  6. --material-text-input-color: var(--material-text-input-text-color);
  7. --text-input: {
  8. @apply(--input);
  9. @apply(--transparent);
  10. letter-spacing: 0;
  11. box-shadow: none;
  12. color: var(--input-text-color);
  13. padding: 0;
  14. margin: 0;
  15. width: auto;
  16. font-size: var(--text-input-font-size);
  17. height: var(--text-input-height);
  18. font-weight: var(--font-weight);
  19. box-sizing: border-box;
  20. }
  21. --text-input--disabled: {
  22. @apply(--disabled);
  23. }
  24. --text-input--focus: {
  25. }
  26. --input-placeholder: {
  27. @apply(--transparent);
  28. color: var(--input-placeholder-color);
  29. }
  30. --text-input--invalid: {
  31. @apply(--transparent);
  32. color: var(--input-invalid-text-color);
  33. }
  34. --text-input-underbar-disabled: {
  35. @apply(--input-placeholder);
  36. border: none;
  37. background-color: transparent;
  38. }
  39. --text-input--material-placeholder: {
  40. color: var(--material-text-input-inactive-color);
  41. line-height: 20px;
  42. }
  43. }
  44. /*~
  45. name: Text Input
  46. category: Text Input
  47. elements: ons-input
  48. markup: |
  49. <div><input type="text" class="text-input" placeholder="text" value=""></div>
  50. <div><input type="text" class="text-input" placeholder="text" value="" disabled></div>
  51. */
  52. .text-input {
  53. @apply(--text-input);
  54. }
  55. .text-input::-ms-clear {
  56. display: none;
  57. }
  58. .text-input:disabled {
  59. @apply(--text-input--disabled);
  60. }
  61. .text-input::placeholder {
  62. color: var(--input-placeholder-color);
  63. }
  64. .text-input:disabled::placeholder {
  65. @apply(--input-placeholder);
  66. }
  67. .text-input:invalid {
  68. @apply(--text-input--invalid);
  69. }
  70. /*~
  71. name: Underbar Text Input
  72. category: Text Input
  73. elements: ons-input
  74. markup: |
  75. <div><input type="text" class="text-input text-input--underbar" placeholder="text" value=""></div>
  76. <div><input type="text" class="text-input text-input--underbar" placeholder="text" value="" disabled></div>
  77. */
  78. .text-input--underbar {
  79. @apply(--text-input);
  80. border: none;
  81. background-color: transparent;
  82. border-bottom: 1px solid var(--text-input-border-color);
  83. border-radius: 0;
  84. }
  85. .text-input--underbar:disabled {
  86. @apply(--text-input--disabled);
  87. border: none;
  88. background-color: transparent;
  89. border-bottom: 1px solid var(--text-input-border-color);
  90. }
  91. .text-input--underbar:disabled::placeholder {
  92. @apply(--text-input-underbar-disabled);
  93. }
  94. .text-input--underbar:invalid {
  95. @apply(--text-input--invalid);
  96. border: none;
  97. background-color: transparent;
  98. border-bottom: 1px solid var(--input-invalid-border-color);
  99. }
  100. /*~
  101. name: Material Input
  102. category: Text Input
  103. elements: ons-input
  104. markup: |
  105. <span>
  106. <div><input class="text-input text-input--material" placeholder="Username" type="text" required></div>
  107. <br />
  108. <div><input class="text-input text-input--material" placeholder="Password" type="password" required></div>
  109. </span>
  110. */
  111. .text-input--material {
  112. @apply(--input);
  113. @apply(--material-font);
  114. color: var(--material-text-input-color);
  115. background-image: linear-gradient(to top, transparent 1px, var(--material-text-input-inactive-color) 1px);
  116. background-size: 100% 2px;
  117. background-repeat: no-repeat;
  118. background-position: center bottom;
  119. background-color: transparent;
  120. font-size: var(--material-text-input-font-size);
  121. font-weight: 400;
  122. border: none;
  123. padding-bottom: 2px;
  124. border-radius: 0;
  125. height: 24px;
  126. vertical-align: middle;
  127. -webkit-transform: translate3d(0, 0, 0); /* FIXME: prevent ios flicker */
  128. }
  129. .text-input--material__label {
  130. @apply(--material-font);
  131. color: var(--material-text-input-inactive-color);
  132. position: absolute;
  133. left: 0;
  134. top: 2px;
  135. font-size: 16px;
  136. font-weight: 400;
  137. pointer-events: none;
  138. }
  139. .text-input--material__label--active {
  140. color: var(--material-text-input-active-color);
  141. transform: translate(0, -75%) scale(0.75);
  142. transform-origin: left top;
  143. transition: transform 0.1s ease-in, color 0.1s ease-in;
  144. }
  145. .text-input--material:focus {
  146. background-image:
  147. linear-gradient(var(--material-text-input-active-color), var(--material-text-input-active-color)),
  148. linear-gradient(to top, transparent 1px, var(--material-text-input-inactive-color) 1px);
  149. animation: material-text-input-animate 0.3s forwards;
  150. }
  151. .text-input--material::placeholder {
  152. @apply(--text-input--material-placeholder);
  153. }
  154. @keyframes material-text-input-animate {
  155. 0% {
  156. background-size: 0% 2px, 100% 2px;
  157. }
  158. 100% {
  159. background-size: 100% 2px, 100% 2px;
  160. }
  161. }