keyboard-dark.css 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. /* *** keyboard dark theme ***
  2. for when jQuery UI themes are not being used
  3. See https://jsfiddle.net/Mottie/6dmqhLvh/
  4. */
  5. .ui-keyboard {
  6. /* adjust overall keyboard size using "font-size" */
  7. font-size: 14px;
  8. text-align: center;
  9. background: #282828;
  10. border: 1px solid #484848;
  11. padding: 4px;
  12. /* include the following setting to place the
  13. keyboard at the bottom of the browser window */
  14. width: 100%;
  15. height: auto;
  16. left: 0px;
  17. top: auto;
  18. bottom: 0px;
  19. position: fixed;
  20. white-space: nowrap;
  21. overflow-x: auto;
  22. /* see issue #484 */
  23. -ms-touch-action: manipulation;
  24. touch-action: manipulation;
  25. }
  26. .ui-keyboard-has-focus {
  27. z-index: 16001;
  28. }
  29. .ui-keyboard-button {
  30. border: 1px solid #404040;
  31. padding: 0 0.5em;
  32. margin: 1px;
  33. min-width: 3em;
  34. height: 3em;
  35. line-height: 3em;
  36. vertical-align: top;
  37. font-family: Helvetica, Arial, sans-serif;
  38. color: #eee;
  39. text-align: center;
  40. border-radius: 5px;
  41. -webkit-box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.5);
  42. box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.5);
  43. background: #444;
  44. background-image: -webkit-linear-gradient(-90deg, #444 0%, #333 100%);
  45. background-image: linear-gradient(-90deg, #444 0%, #333 100%);
  46. cursor: pointer;
  47. overflow: hidden;
  48. -moz-user-focus: ignore;
  49. }
  50. .ui-keyboard-button:not([disabled]):hover {
  51. background: #eee;
  52. background-image: -webkit-linear-gradient(-90deg, #4f4f4f 0%, #444 100%);
  53. background-image: linear-gradient(-90deg, #4f4f4f 0%, #444 100%);
  54. }
  55. .ui-keyboard-button:not([disabled]):active {
  56. background: #ddd;
  57. background-image: -webkit-linear-gradient(-90deg, #555 0%, #5f5f5f 100%);
  58. background-image: linear-gradient(-90deg, #555 0%, #5f5f5f 100%);
  59. }
  60. .ui-keyboard-button span {
  61. display: block;
  62. width: 100%;
  63. font-size: 1.2em;
  64. text-align: center;
  65. }
  66. /* make action keys extra-wide */
  67. .ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo) {
  68. min-width: 6em;
  69. }
  70. .ui-keyboard-space {
  71. width: 15em;
  72. }
  73. .ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo) span {
  74. font-size: 0.8em;
  75. position: relative;
  76. top: -1em;
  77. left: -1.6em;
  78. }
  79. .ui-keyboard-placeholder {
  80. color: #888;
  81. }
  82. /* disabled or readonly inputs, or use input[disabled='disabled'] { color: #f00; } */
  83. .ui-keyboard-nokeyboard {
  84. color: #888;
  85. border-color: #888;
  86. }
  87. .ui-keyboard-spacer {
  88. display: inline-block;
  89. width: 1px;
  90. height: 0;
  91. cursor: default;
  92. }
  93. .ui-keyboard-NBSP span, .ui-keyboard-ZWSP span, .ui-keyboard-ZWNJ span, .ui-keyboard-ZWJ span,
  94. .ui-keyboard-LRM span, .ui-keyboard-RLM span {
  95. font-size: 0.5em;
  96. line-height: 1.5em;
  97. white-space: normal;
  98. }
  99. /* combo key styling - toggles diacritics on/off */
  100. .ui-keyboard-button.ui-keyboard-combo.ui-state-default {
  101. -webkit-box-shadow: 1px 1px 3px 0 rgba(213, 133, 18, 0.5);
  102. box-shadow: 1px 1px 3px 0 rgba(213, 133, 18, 0.5);
  103. border-color: #d58512;
  104. }
  105. .ui-keyboard-button.ui-keyboard-combo.ui-state-active {
  106. -webkit-box-shadow: 1px 1px 3px 0 rgba(38, 154, 188, 0.5);
  107. box-shadow: 1px 1px 3px 0 rgba(38, 154, 188, 0.5);
  108. border-color: #269abc;
  109. }
  110. /* (in)valid inputs */
  111. button.ui-keyboard-accept.ui-keyboard-valid-input {
  112. -webkit-box-shadow: 1px 1px 3px 0 rgba(57, 132, 57, 0.5);
  113. box-shadow: 1px 1px 3px 0 rgba(57, 132, 57, 0.5);
  114. border-color: #398439;
  115. }
  116. button.ui-keyboard-accept.ui-keyboard-valid-input:not([disabled]):hover {
  117. border-color: #4cae4c;
  118. }
  119. button.ui-keyboard-accept.ui-keyboard-invalid-input {
  120. -webkit-box-shadow: 1px 1px 3px 0 rgba(172, 41, 37, 0.5);
  121. box-shadow: 1px 1px 3px 0 rgba(172, 41, 37, 0.5);
  122. border-color: #ac2925;
  123. }
  124. button.ui-keyboard-accept.ui-keyboard-invalid-input:not([disabled]):hover {
  125. border-color: #d43f3a;
  126. }
  127. /* unlocked icon (keyboard enabled) */
  128. button.ui-keyboard-toggle span {
  129. width: .9em;
  130. height: .9em;
  131. display: inline-block;
  132. background-repeat: no-repeat;
  133. background-position: center center;
  134. background-size: contain;
  135. /* dark theme unlocked icon - fill: #eee */
  136. background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTguNyw0LjRINy41SDUuMHYtMS45YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40LDAtMi41LDEuMS0yLjUsMi41djEuOWgxLjIgdi0xLjljMC0wLjcsMC42LTEuMiwxLjItMS4yczEuMiwwLjYsMS4yLDEuMnYxLjljLTAuNywwLTEuMiwwLjYtMS4yLDEuMlY4LjggYzAsMC43LDAuNiwxLjIsMS4yLDEuMmg1LjBDOS40LDEwLDEwLDkuNCwxMCw4LjhWNS42QzEwLDUuMCw5LjQsNC40LDguOCw0LjR6IE02LjYsNy40djEuMCBjMCwwLjItMC4xLDAuMy0wLjMsMC4zUzYuMCw4LjYsNi4wLDguNFY3LjRjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zLDAuMy0wLjYsMC42LTAuNiBTNi45LDYuNiw2LjksNi45QzYuOSw3LjEsNi44LDcuMyw2LjYsNy40eiIvPjwvc3ZnPg==');
  137. }
  138. /* locked icon (keyboard disabled) */
  139. button.ui-keyboard-toggle.ui-keyboard-disabled span {
  140. /* dark theme locked icon - fill: #eee */
  141. background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTcuNCA0LjRWMi41YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40IDAtMi41IDEuMS0yLjUgMi41djEuOSBjLTAuNyAwLTEuMiAwLjUtMS4yIDEuMnYzLjFDMS4zIDkuNCAxLjggMTAgMi41IDEwaDQuOWMwLjcgMCAxLjItMC42IDEuMi0xLjJWNS42IEM4LjcgNC45IDguMSA0LjQgNy40IDQuNHogTTUuMyA3LjR2MS4wYzAgMC4yLTAuMSAwLjMtMC4zIDAuM2MtMC4yIDAtMC4zLTAuMS0wLjMtMC4zVjcuNCBjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zIDAuMy0wLjYgMC42LTAuNmMwLjMgMCAwLjYgMC4zIDAuNiAwLjYgQzUuNiA3LjEgNS41IDcuMyA1LjMgNy40eiBNNi4yIDQuNEgzLjdWMi41YzAtMC43IDAuNS0xLjIgMS4yLTEuMmMwLjcgMCAxLjIgMC42IDEuMiAxLjIgVjQuNHoiLz48L3N2Zz4=');
  142. }
  143. .ui-keyboard.ui-keyboard-disabled button:not(.ui-keyboard-toggle), .ui-keyboard.ui-keyboard-disabled input {
  144. opacity: 0.5;
  145. }
  146. /*** Alt-Keys Popup extension ***/
  147. /* clickable overlay on top of keyboard to hide the popup */
  148. .ui-keyboard-overlay {
  149. position: absolute;
  150. top: 0;
  151. left: 0;
  152. bottom: 0;
  153. right: 0;
  154. background: rgba(0, 0, 0, 0.5);
  155. }
  156. /* the actual popup styling, class names from the css.container option are also added */
  157. .ui-keyboard-popup {
  158. display: inline-block;
  159. /* default buttons are 2em wide + .1em margin on either side (set in .ui-keyboard-button definition);
  160. so use multiples of 2.2em for a max-width if you don't want any extra white space on the sides,
  161. e.g. 5 buttons * 2.2em = 11em, 6 buttons * 2.2em = 13.2em, etc */
  162. max-width: 22em;
  163. /* 10 buttons */
  164. }
  165. .ui-keyboard.ui-keyboard-popup-open .ui-keyboard-keyset .ui-keyboard-button {
  166. /* Disable keys under overlay while popup is open - see #654 */
  167. pointer-events: none;
  168. }
  169. /*** Caret extension definition ***/
  170. /* margin-top => is added to the caret height (top & bottom) */
  171. .ui-keyboard-caret {
  172. background: #c00;
  173. width: 1px;
  174. margin-top: 3px;
  175. }
  176. /*** Extender keyboard extension ***/
  177. div.ui-keyboard-extender {
  178. margin-left: 5px;
  179. margin-right: 10px;
  180. }
  181. button.ui-keyboard-extender span {
  182. width: .9em;
  183. height: .9em;
  184. display: inline-block;
  185. margin-bottom: 3px;
  186. background-repeat: no-repeat;
  187. background-position: center center;
  188. background-size: contain;
  189. /* dark theme extender icon - fill: #eee */
  190. background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGw6I2VlZSI+PGc+PHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2VlZSIgZD0iTSAwLjUsNC41IDE1LjUsNC41IDE1LjUsMTUuNSAwLjUsMTUuNSBaIj48L3BhdGg+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iMiIgeT0iNiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjYiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSI4IiB5PSI2Ij48L3JlY3Q+PHBhdGggZD0ibSAxMSw2IDMsMCAwLDUgLTIsMCAwLC0zIC0xLDAgeiI+PC9wYXRoPjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjEyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSI2IiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjEyIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iOSIgeT0iOSI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjYiIHk9IjkiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSIyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIzIiBoZWlnaHQ9IjIiIHg9IjIiIHk9IjkiPjwvcmVjdD48L2c+PC9zdmc+');
  191. }