form--checkbox-radio.css

Same filename in this branch
  1. main core/themes/claro/css/components/form--checkbox-radio.css
  2. main core/themes/admin/css/components/form--checkbox-radio.css
Same filename and directory in other branches
  1. 10 core/themes/claro/css/components/form--checkbox-radio.css
  2. 11.x core/themes/claro/css/components/form--checkbox-radio.css
  3. 9 core/themes/claro/css/components/form--checkbox-radio.css
  4. 8.9.x core/themes/claro/css/components/form--checkbox-radio.css
  5. 11.x core/themes/admin/css/components/form--checkbox-radio.css
  6. 11.x core/themes/default_admin/css/components/form--checkbox-radio.css

Checkbox and radio input elements.

File

core/themes/default_admin/css/components/form--checkbox-radio.css

View source
  1. /*
  2. * DO NOT EDIT THIS FILE.
  3. * See the following change record for more information,
  4. * https://www.drupal.org/node/3084859
  5. * @preserve
  6. */
  7. /**
  8. * @file
  9. * Checkbox and radio input elements.
  10. */
  11. /**
  12. * Form item modifiers.
  13. */
  14. .form-type--boolean {
  15. margin-inline-start: var(--input--label-spacing);
  16. line-height: var(--space-l);
  17. }
  18. .form-boolean {
  19. display: inline-block;
  20. box-sizing: border-box;
  21. width: 1.3125rem;
  22. height: 1.3125rem;
  23. vertical-align: text-bottom;
  24. border: 1px solid var(--gin-border-color-form-element);
  25. border-radius: var(--gin-border-xs);
  26. background: var(--input-bg-color) no-repeat 50% 50%;
  27. background-size: 100% 100%;
  28. appearance: none;
  29. &:focus {
  30. outline-offset: -1px;
  31. }
  32. &:hover,
  33. &:active {
  34. border-color: var(--input-fg-color);
  35. box-shadow: inset 0 0 0 1px var(--input-fg-color);
  36. .gin--dark-mode
  37. }
  38. /**
  39. * Radio and checkbox items that are the child of a form item.
  40. */
  41. .form-type--boolean
  42. .form-type--boolean.form-item--no-label
  43. @media (forced-colors: active) {
  44. appearance: revert;
  45. }
  46. }
  47. .form-type--boolean.form-item--no-label {
  48. margin-inline-start: 0;
  49. }
  50. .form-radios,
  51. .form-checkboxes {
  52. .form-type--boolean {
  53. margin-block: var(--gin-spacing-xs);
  54. }
  55. }
  56. /*
  57. * Radio buttons.
  58. */
  59. .form-boolean--type-radio {
  60. &,
  61. &:hover,
  62. &:active,
  63. &:focus,
  64. &:hover:focus {
  65. border-color: var(--gin-border-color-form-element);
  66. border-radius: 50%;
  67. background-color: var(--gin-bg-input);
  68. }
  69. &:hover {
  70. box-shadow: inset 0 0 0 1px var(--gin-border-color-layer2);
  71. &,
  72. .gin--dark-mode
  73. }
  74. &:checked:not(:disabled) {
  75. &,
  76. &:hover {
  77. background-color: var(--gin-bg-layer);
  78. box-shadow: inset 0 0 0 5px var(--gin-color-primary);
  79. }
  80. &:active,
  81. &:focus,
  82. &:hover:focus {
  83. border-color: var(--gin-color-focus-border);
  84. box-shadow:
  85. inset 0 0 0 5px var(--gin-color-primary),
  86. 0 0 0 1px var(--gin-color-focus-border),
  87. 0 0 0 4px var(--gin-color-focus);
  88. }
  89. }
  90. &:disabled {
  91. &,
  92. &:hover {
  93. cursor: not-allowed;
  94. border-color: var(--gin-color-disabled-border);
  95. background: var(--gin-color-disabled-bg);
  96. }
  97. }
  98. &:checked:disabled {
  99. &,
  100. &:hover {
  101. background: var(--gin-color-disabled);
  102. box-shadow: inset 0 0 0 5px var(--gin-color-disabled-bg);
  103. }
  104. }
  105. }
  106. /*
  107. * Checkboxes.
  108. */
  109. .form-boolean--type-checkbox {
  110. &:not(:checked) {
  111. .gin--dark-mode
  112. }
  113. &:checked {
  114. border-color: var(--gin-color-primary);
  115. background-color: var(--gin-color-primary);
  116. background-image: url("data:image/svg+xml,%3csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M3.795 7.096l2.387 2.506 6.023-6.327 1.484 1.56-7.507 7.89L2.31 8.656z' fill='%23fff'/%3e%3c/svg%3e");
  117. &:not(:disabled) {
  118. .gin--dark-mode
  119. }
  120. &:hover {
  121. border-color: var(--gin-color-primary-hover);
  122. background-color: var(--gin-color-primary-hover);
  123. }
  124. &:active {
  125. border-color: var(--gin-color-primary-active);
  126. background-color: var(--gin-color-primary-active);
  127. }
  128. }
  129. &[disabled] {
  130. &,
  131. &:hover {
  132. cursor: not-allowed;
  133. border-color: var(--gin-color-disabled-border);
  134. background-color: var(--gin-color-disabled-bg);
  135. &:checked {
  136. border-color: var(--gin-color-disabled-border);
  137. background-color: var(--gin-color-disabled-bg);
  138. box-shadow: none;
  139. }
  140. }
  141. }
  142. }
  143. /**
  144. * Error states.
  145. */
  146. .form-boolean.error {
  147. border-color: var(--input--error-border-color);
  148. background-color: var(--input-bg-color);
  149. box-shadow: inset 0 0 0 1px var(--input--error-border-color);
  150. &:active,
  151. &:hover {
  152. box-shadow: inset 0 0 0 1px var(--input--error-border-color);
  153. }
  154. &:focus,
  155. &:focus:active,
  156. &:focus:hover {
  157. box-shadow:
  158. 0 0 0 2px var(--color-white),
  159. 0 0 0 5px var(--color-focus),
  160. inset 0 0 0 1px var(--input--error-border-color);
  161. }
  162. &:checked:active,
  163. &:checked:hover {
  164. border-color: var(--input--error-border-color);
  165. background-color: var(--input-bg-color);
  166. }
  167. }
  168. .form-boolean--type-checkbox.error:checked,
  169. .form-boolean--type-checkbox.error:checked:active,
  170. .form-boolean--type-checkbox.error:checked:hover {
  171. background-color: var(--input--error-border-color);
  172. }
  173. .form-boolean--type-radio.error:checked,
  174. .form-boolean--type-radio.error:checked:active,
  175. .form-boolean--type-radio.error:checked:hover {
  176. background-image: url("data:image/svg+xml,%3csvg width='17' height='17' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle r='4.5' cx='8.5' cy='8.5' fill='%23d72222'/%3e%3c/svg%3e");
  177. }
  178. .form-boolean--type-radio.error:checked:focus {
  179. box-shadow:
  180. 0 0 0 2px var(--color-white),
  181. 0 0 0 5px var(--color-focus),
  182. inset 0 0 0 1px var(--input--error-border-color);
  183. }
  184. /**
  185. * Disabled states.
  186. */
  187. .form-boolean[disabled],
  188. .form-boolean[disabled]:hover,
  189. .form-boolean[disabled].error,
  190. .form-boolean[disabled].error:hover,
  191. .form-boolean--type-radio[disabled]:focus:active,
  192. .form-boolean--type-radio[disabled]:active:hover,
  193. .form-boolean--type-radio[disabled].error:active:hover {
  194. border-color: var(--input--disabled-border-color);
  195. background-color: var(--input--disabled-bg-color);
  196. background-image: none;
  197. box-shadow: none;
  198. }
  199. .form-boolean--type-checkbox[disabled]:checked {
  200. background-image: url("data:image/svg+xml,%3csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M3.795 7.096l2.387 2.506 6.023-6.327 1.484 1.56-7.507 7.89L2.31 8.656z' fill='%2382828c'/%3e%3c/svg%3e");
  201. }
  202. .form-boolean--type-radio[disabled]:checked,
  203. .form-boolean--type-radio[disabled].error:checked {
  204. background-image: url("data:image/svg+xml,%3csvg width='17' height='17' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle r='4.5' cx='8.5' cy='8.5' fill='%2382828c'/%3e%3c/svg%3e");
  205. }

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.