isteven-multi-select.css 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. /*
  2. * Don't modify things marked with ! - unless you know what you're doing
  3. */
  4. /* ! vertical layout */
  5. .multiSelect .vertical {
  6. float: none;
  7. }
  8. /* ! horizontal layout */
  9. .multiSelect .horizontal:not(.multiSelectGroup) {
  10. float: left;
  11. }
  12. /* ! create a "row" */
  13. .multiSelect .line {
  14. padding: 2px 0px 4px 0px;
  15. max-height: 30px;
  16. overflow: hidden;
  17. box-sizing: content-box;
  18. }
  19. /* ! create a "column" */
  20. .multiSelect .acol {
  21. display: inline-block;
  22. min-width: 12px;
  23. }
  24. /* ! */
  25. .multiSelect .inlineBlock {
  26. display: inline-block;
  27. }
  28. /* the multiselect button */
  29. .multiSelect > button {
  30. width: 100%;
  31. display: inline-block;
  32. position: relative;
  33. text-align: center;
  34. cursor: pointer;
  35. border: 1px solid #c6c6c6;
  36. padding: 1px 8px 1px 8px;
  37. font-size: 14px;
  38. min-height : 38px !important;
  39. border-radius: 4px;
  40. color: #555;
  41. -webkit-user-select: none;
  42. -moz-user-select: none;
  43. -ms-user-select: none;
  44. -o-user-select: none;
  45. user-select: none;
  46. white-space:normal;
  47. background-color: #fff;
  48. background-image: linear-gradient(#fff, #f7f7f7);
  49. }
  50. /* button: hover */
  51. .multiSelect > button:hover {
  52. background-image: linear-gradient(#fff, #e9e9e9);
  53. }
  54. /* button: disabled */
  55. .multiSelect > button:disabled {
  56. background-image: linear-gradient(#fff, #fff);
  57. border: 1px solid #ddd;
  58. color: #999;
  59. }
  60. /* button: clicked */
  61. .multiSelect .buttonClicked {
  62. box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
  63. }
  64. /* labels on the button */
  65. .multiSelect .buttonLabel {
  66. display: inline-block;
  67. padding: 5px 0px 5px 0px;
  68. }
  69. /* downward pointing arrow */
  70. .multiSelect .caret {
  71. display: inline-block;
  72. width: 0;
  73. height: 0;
  74. margin: 0px 0px 1px 12px !important;
  75. vertical-align: middle;
  76. border-top: 4px solid #333;
  77. border-right: 4px solid transparent;
  78. border-left: 4px solid transparent;
  79. border-bottom: 0 dotted;
  80. }
  81. /* the main checkboxes and helper layer */
  82. .multiSelect .checkboxLayer {
  83. background-color: #fff;
  84. position: absolute;
  85. z-index: 999;
  86. border: 1px solid rgba(0, 0, 0, 0.15);
  87. border-radius: 4px;
  88. -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  89. box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  90. min-width:278px;
  91. display: none !important;
  92. }
  93. /* container of helper elements */
  94. .multiSelect .helperContainer {
  95. border-bottom: 1px solid #ddd;
  96. padding: 8px 8px 0px 8px;
  97. }
  98. /* helper buttons (select all, none, reset); */
  99. .multiSelect .helperButton {
  100. display: inline;
  101. text-align: center;
  102. cursor: pointer;
  103. border: 1px solid #ccc;
  104. height: 26px;
  105. font-size: 13px;
  106. border-radius: 2px;
  107. color: #666;
  108. background-color: #f1f1f1;
  109. line-height: 1.6;
  110. margin: 0px 0px 8px 0px;
  111. }
  112. .multiSelect .helperButton.reset{
  113. float: right;
  114. }
  115. .multiSelect .helperButton:not( .reset ) {
  116. margin-right: 4px;
  117. }
  118. /* clear button */
  119. .multiSelect .clearButton {
  120. position: absolute;
  121. display: inline;
  122. text-align: center;
  123. cursor: pointer;
  124. border: 1px solid #ccc;
  125. height: 22px;
  126. width: 22px;
  127. font-size: 13px;
  128. border-radius: 2px;
  129. color: #666;
  130. background-color: #f1f1f1;
  131. line-height: 1.4;
  132. right : 2px;
  133. top: 4px;
  134. }
  135. /* filter */
  136. .multiSelect .inputFilter {
  137. border-radius: 2px;
  138. border: 1px solid #ccc;
  139. height: 26px;
  140. font-size: 14px;
  141. width:100%;
  142. padding-left:7px;
  143. -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  144. -moz-box-sizing: border-box; /* Firefox, other Gecko */
  145. box-sizing: border-box; /* Opera/IE 8+ */
  146. color: #888;
  147. margin: 0px 0px 8px 0px;
  148. -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  149. box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  150. }
  151. /* helper elements on hover & focus */
  152. .multiSelect .clearButton:hover,
  153. .multiSelect .helperButton:hover {
  154. border: 1px solid #ccc;
  155. color: #999;
  156. background-color: #f4f4f4;
  157. }
  158. .multiSelect .helperButton:disabled {
  159. color: #ccc;
  160. border: 1px solid #ddd;
  161. }
  162. .multiSelect .clearButton:focus,
  163. .multiSelect .helperButton:focus,
  164. .multiSelect .inputFilter:focus {
  165. border: 1px solid #66AFE9 !important;
  166. outline: 0;
  167. -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,.065), 0 0 5px rgba(102, 175, 233, .6) !important;
  168. box-shadow: inset 0 0 1px rgba(0,0,0,.065), 0 0 5px rgba(102, 175, 233, .6) !important;
  169. }
  170. /* container of multi select items */
  171. .multiSelect .checkBoxContainer {
  172. display: block;
  173. padding: 8px;
  174. overflow: hidden;
  175. }
  176. /* ! to show / hide the checkbox layer above */
  177. .multiSelect .show {
  178. display: block !important;
  179. }
  180. /* item labels */
  181. .multiSelect .multiSelectItem {
  182. display: block;
  183. padding: 3px;
  184. color: #444;
  185. white-space: nowrap;
  186. -webkit-user-select: none;
  187. -moz-user-select: none;
  188. -ms-user-select: none;
  189. -o-user-select: none;
  190. user-select: none;
  191. border: 1px solid transparent;
  192. position: relative;
  193. min-width:278px;
  194. min-height: 32px;
  195. }
  196. /* Styling on selected items */
  197. .multiSelect .multiSelectItem:not(.multiSelectGroup).selected
  198. {
  199. background-image: linear-gradient( #e9e9e9, #f1f1f1 );
  200. color: #555;
  201. cursor: pointer;
  202. border-top: 1px solid #e4e4e4;
  203. border-left: 1px solid #e4e4e4;
  204. border-right: 1px solid #d9d9d9;
  205. }
  206. .multiSelect .multiSelectItem .acol label {
  207. display: inline-block;
  208. padding-right: 30px;
  209. margin: 0px;
  210. font-weight: normal;
  211. line-height: normal;
  212. }
  213. /* item labels focus on mouse hover */
  214. .multiSelect .multiSelectItem:hover,
  215. .multiSelect .multiSelectGroup:hover {
  216. background-image: linear-gradient( #c1c1c1, #999 ) !important;
  217. color: #fff !important;
  218. cursor: pointer;
  219. border: 1px solid #ccc !important;
  220. }
  221. /* item labels focus using keyboard */
  222. .multiSelect .multiSelectFocus {
  223. background-image: linear-gradient( #c1c1c1, #999 ) !important;
  224. color: #fff !important;
  225. cursor: pointer;
  226. border: 1px solid #ccc !important;
  227. }
  228. /* change mouse pointer into the pointing finger */
  229. .multiSelect .multiSelectItem span:hover,
  230. .multiSelect .multiSelectGroup span:hover
  231. {
  232. cursor: pointer;
  233. }
  234. /* ! group labels */
  235. .multiSelect .multiSelectGroup {
  236. display: block;
  237. clear: both;
  238. }
  239. /* right-align the tick mark (✔) */
  240. .multiSelect .tickMark {
  241. display:inline-block;
  242. position: absolute;
  243. right: 10px;
  244. top: 7px;
  245. font-size: 10px;
  246. }
  247. /* hide the original HTML checkbox away */
  248. .multiSelect .checkbox {
  249. color: #ddd !important;
  250. position: absolute;
  251. left: -9999px;
  252. cursor: pointer;
  253. }
  254. /* checkboxes currently disabled */
  255. .multiSelect .disabled,
  256. .multiSelect .disabled:hover,
  257. .multiSelect .disabled label input:hover ~ span {
  258. color: #c4c4c4 !important;
  259. cursor: not-allowed !important;
  260. }
  261. /* If you use images in button / checkbox label, you might want to change the image style here. */
  262. .multiSelect img {
  263. vertical-align: middle;
  264. margin-bottom:0px;
  265. max-height: 22px;
  266. max-width:22px;
  267. }