mobileSelect.css 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. .mobileSelect {
  2. position: absolute;
  3. z-index: 0;
  4. opacity: 0;
  5. visibility: hidden;
  6. -webkit-transition: opacity 0.4s, z-index 0.4s;
  7. transition: opacity 0.4s, z-index 0.4s;
  8. }
  9. .mobileSelect * {
  10. margin: 0;
  11. padding: 0;
  12. -webkit-box-sizing: border-box;
  13. box-sizing: border-box;
  14. }
  15. .mobileSelect .grayLayer {
  16. position: fixed;
  17. top: 0;
  18. left: 0;
  19. bottom: 0;
  20. right: 0;
  21. background: #eee;
  22. background: rgba(0, 0, 0, 0.7);
  23. z-index: 888;
  24. display: block;
  25. }
  26. .mobileSelect .content {
  27. width: 100%;
  28. display: block;
  29. position: fixed;
  30. z-index: 889;
  31. color: black;
  32. -webkit-transition: all 0.4s;
  33. transition: all 0.4s;
  34. bottom: -350px;
  35. left: 0;
  36. background: white;
  37. }
  38. .mobileSelect .content .fixWidth {
  39. width: 90%;
  40. margin: 0 auto;
  41. position: relative;
  42. }
  43. .mobileSelect .content .fixWidth:after {
  44. content: ".";
  45. display: block;
  46. height: 0;
  47. clear: both;
  48. visibility: hidden;
  49. }
  50. .mobileSelect .content .btnBar {
  51. border-bottom: 1px solid #DCDCDC;
  52. font-size: 15px;
  53. height: 45px;
  54. position: relative;
  55. text-align: center;
  56. line-height: 45px;
  57. }
  58. .mobileSelect .content .btnBar .cancel,
  59. .mobileSelect .content .btnBar .ensure {
  60. height: 45px;
  61. width: 55px;
  62. cursor: pointer;
  63. position: absolute;
  64. top: 0;
  65. }
  66. .mobileSelect .content .btnBar .cancel {
  67. left: 0;
  68. color: #666;
  69. }
  70. .mobileSelect .content .btnBar .ensure {
  71. right: 0;
  72. color: #1e83d3;
  73. }
  74. .mobileSelect .content .btnBar .title {
  75. font-size: 15px;
  76. padding: 0 15%;
  77. overflow: hidden;
  78. white-space: nowrap;
  79. text-overflow: ellipsis;
  80. }
  81. .mobileSelect .content .panel:after {
  82. content: ".";
  83. display: block;
  84. height: 0;
  85. clear: both;
  86. visibility: hidden;
  87. }
  88. .mobileSelect .content .panel .wheels {
  89. width: 100%;
  90. height: 200px;
  91. overflow: hidden;
  92. }
  93. .mobileSelect .content .panel .wheel {
  94. position: relative;
  95. z-index: 0;
  96. float: left;
  97. width: 50%;
  98. height: 200px;
  99. overflow: hidden;
  100. -webkit-transition: width 0.3s ease;
  101. transition: width 0.3s ease;
  102. }
  103. .mobileSelect .content .panel .wheel .selectContainer {
  104. display: block;
  105. text-align: center;
  106. -webkit-transition: -webkit-transform 0.18s ease-out;
  107. transition: -webkit-transform 0.18s ease-out;
  108. transition: transform 0.18s ease-out;
  109. transition: transform 0.18s ease-out, -webkit-transform 0.18s ease-out;
  110. }
  111. .mobileSelect .content .panel .wheel .selectContainer li {
  112. font-size: 15px;
  113. display: block;
  114. height: 40px;
  115. line-height: 40px;
  116. cursor: pointer;
  117. overflow: hidden;
  118. white-space: nowrap;
  119. text-overflow: ellipsis;
  120. }
  121. .mobileSelect .content .panel .selectLine {
  122. height: 40px;
  123. width: 100%;
  124. position: absolute;
  125. top: 80px;
  126. pointer-events: none;
  127. -webkit-box-sizing: border-box;
  128. box-sizing: border-box;
  129. border-top: 1px solid #DCDCDC;
  130. border-bottom: 1px solid #DCDCDC;
  131. }
  132. .mobileSelect .content .panel .shadowMask {
  133. position: absolute;
  134. top: 0;
  135. width: 100%;
  136. height: 200px;
  137. background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(rgba(255, 255, 255, 0)), to(#ffffff));
  138. background: -webkit-linear-gradient(top, #ffffff, rgba(255, 255, 255, 0), #ffffff);
  139. background: linear-gradient(to bottom, #ffffff, rgba(255, 255, 255, 0), #ffffff);
  140. opacity: 0.9;
  141. pointer-events: none;
  142. }
  143. .mobileSelect-show {
  144. opacity: 1;
  145. z-index: 10000;
  146. visibility: visible;
  147. }
  148. .mobileSelect-show .content {
  149. bottom: 0;
  150. }