form-selectboxes.mdx 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. ---
  2. title: Form selectboxes
  3. ---
  4. Add selectboxes to make your form more intuitive by providing users with a set of options to choose from. You can add simple selectboxes with a label, use icons only or icons with labels. Alternatively, you can use pill selectboxes if they go well with your design.
  5. ```html example code columns={1} centered
  6. <div class="mb-3">
  7. <label class="form-label">Simple selectgroup</label>
  8. <div class="form-selectgroup">
  9. <label class="form-selectgroup-item">
  10. <input type="checkbox" name="name" value="HTML" class="form-selectgroup-input" checked />
  11. <span class="form-selectgroup-label">HTML</span>
  12. </label>
  13. <label class="form-selectgroup-item">
  14. <input type="checkbox" name="name" value="CSS" class="form-selectgroup-input" />
  15. <span class="form-selectgroup-label">CSS</span>
  16. </label>
  17. <label class="form-selectgroup-item">
  18. <input type="checkbox" name="name" value="PHP" class="form-selectgroup-input" />
  19. <span class="form-selectgroup-label">PHP</span>
  20. </label>
  21. <label class="form-selectgroup-item">
  22. <input type="checkbox" name="name" value="JavaScript" class="form-selectgroup-input" />
  23. <span class="form-selectgroup-label">JavaScript</span>
  24. </label>
  25. </div>
  26. </div>
  27. ```
  28. ```html example code columns={1} centered
  29. <div class="mb-3">
  30. <label class="form-label">Icon input</label>
  31. <div class="form-selectgroup">
  32. <label class="form-selectgroup-item">
  33. <input type="checkbox" name="name" value="sun" class="form-selectgroup-input" checked />
  34. <span class="form-selectgroup-label">
  35. <svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  36. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  37. <circle cx="12" cy="12" r="4" />
  38. <path d="M3 12h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7" />
  39. </svg>
  40. </span>
  41. </label>
  42. <label class="form-selectgroup-item">
  43. <input type="checkbox" name="name" value="moon" class="form-selectgroup-input" />
  44. <span class="form-selectgroup-label">
  45. <svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  46. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  47. <path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" />
  48. </svg>
  49. </span>
  50. </label>
  51. <label class="form-selectgroup-item">
  52. <input type="checkbox" name="name" value="cloud-rain" class="form-selectgroup-input" />
  53. <span class="form-selectgroup-label">
  54. <svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  55. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  56. <path d="M7 18a4.6 4.4 0 0 1 0 -9a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7" />
  57. <path d="M11 13v2m0 3v2m4 -5v2m0 3v2" />
  58. </svg>
  59. </span>
  60. </label>
  61. <label class="form-selectgroup-item">
  62. <input type="checkbox" name="name" value="cloud" class="form-selectgroup-input" />
  63. <span class="form-selectgroup-label">
  64. <svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  65. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  66. <path d="M6.657 18c-2.572 0 -4.657 -2.007 -4.657 -4.483c0 -2.475 2.085 -4.482 4.657 -4.482c.393 -1.762 1.794 -3.2 3.675 -3.773c1.88 -.572 3.956 -.193 5.444 .996c1.488 1.19 2.162 3.007 1.77 4.769h.99c1.913 0 3.464 1.56 3.464 3.486c0 1.927 -1.551 3.487 -3.465 3.487h-11.878" />
  67. </svg>
  68. </span>
  69. </label>
  70. <label class="form-selectgroup-item">
  71. <input type="checkbox" name="name" value="Other" class="form-selectgroup-input" />
  72. <span class="form-selectgroup-label">Other</span>
  73. </label>
  74. </div>
  75. </div>
  76. ```
  77. ```html example code columns={1} centered
  78. <div class="mb-3">
  79. <label class="form-label">Selectgroup with icons and text</label>
  80. <div class="form-selectgroup">
  81. <label class="form-selectgroup-item">
  82. <input type="radio" name="icons" value="home" class="form-selectgroup-input" checked />
  83. <span class="form-selectgroup-label"><svg xmlns="http://www.w3.org/2000/svg" class="icon me-1" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  84. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  85. <polyline points="5 12 3 12 12 3 21 12 19 12" />
  86. <path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" />
  87. <path d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6" />
  88. </svg> Home</span>
  89. </label>
  90. <label class="form-selectgroup-item">
  91. <input type="radio" name="icons" value="user" class="form-selectgroup-input" />
  92. <span class="form-selectgroup-label"><svg xmlns="http://www.w3.org/2000/svg" class="icon me-1" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  93. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  94. <circle cx="12" cy="7" r="4" />
  95. <path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
  96. </svg> User</span>
  97. </label>
  98. <label class="form-selectgroup-item">
  99. <input type="radio" name="icons" value="circle" class="form-selectgroup-input" />
  100. <span class="form-selectgroup-label"><svg xmlns="http://www.w3.org/2000/svg" class="icon me-1" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  101. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  102. <circle cx="12" cy="12" r="9" />
  103. </svg> Circle</span>
  104. </label>
  105. <label class="form-selectgroup-item">
  106. <input type="radio" name="icons" value="square" class="form-selectgroup-input" />
  107. <span class="form-selectgroup-label"><svg xmlns="http://www.w3.org/2000/svg" class="icon me-1" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  108. <path stroke="none" d="M0 0h24v24H0z" fill="none" />
  109. <rect x="4" y="4" width="16" height="16" rx="2" />
  110. </svg> Square</span>
  111. </label>
  112. </div>
  113. </div>
  114. ```
  115. ```html example code columns={1} centered
  116. <div class="mb-3">
  117. <label class="form-label">Different style</label>
  118. <div class="form-selectgroup form-selectgroup-pills">
  119. <label class="form-selectgroup-item">
  120. <input type="checkbox" name="name" value="HTML" class="form-selectgroup-input" checked />
  121. <span class="form-selectgroup-label">HTML</span>
  122. </label>
  123. <label class="form-selectgroup-item">
  124. <input type="checkbox" name="name" value="CSS" class="form-selectgroup-input" />
  125. <span class="form-selectgroup-label">CSS</span>
  126. </label>
  127. <label class="form-selectgroup-item">
  128. <input type="checkbox" name="name" value="PHP" class="form-selectgroup-input" />
  129. <span class="form-selectgroup-label">PHP</span>
  130. </label>
  131. <label class="form-selectgroup-item">
  132. <input type="checkbox" name="name" value="JavaScript" class="form-selectgroup-input" />
  133. <span class="form-selectgroup-label">JavaScript</span>
  134. </label>
  135. </div>
  136. </div>
  137. ```
  138. ## Advanced selectboxes
  139. Use more advanced selectboxes to display the range of available options. You can choose selectboxes with radio buttons, if you want users to select only one option or with checkboxes, if they are allowed to choose multiple options.
  140. ```html example height="30rem" centered columns="1" plugins="payments"
  141. <div class="mb-3">
  142. <label class="form-label">Payment method</label>
  143. <div class="form-selectgroup form-selectgroup-boxes d-flex flex-column">
  144. <label class="form-selectgroup-item flex-fill">
  145. <input type="radio" name="form-payment" value="visa" class="form-selectgroup-input" />
  146. <div class="form-selectgroup-label d-flex align-items-center p-3">
  147. <div class="me-3">
  148. <span class="form-selectgroup-check"></span>
  149. </div>
  150. <div>
  151. <span class="payment payment-provider-visa payment-xs me-2"></span>
  152. ending in <strong>7998</strong>
  153. </div>
  154. </div>
  155. </label>
  156. <label class="form-selectgroup-item flex-fill">
  157. <input type="radio" name="form-payment" value="mastercard" class="form-selectgroup-input" checked />
  158. <div class="form-selectgroup-label d-flex align-items-center p-3">
  159. <div class="me-3">
  160. <span class="form-selectgroup-check"></span>
  161. </div>
  162. <div>
  163. <span class="payment payment-provider-mastercard payment-xs me-2"></span>
  164. ending in <strong>2807</strong>
  165. </div>
  166. </div>
  167. </label>
  168. <label class="form-selectgroup-item flex-fill">
  169. <input type="radio" name="form-payment" value="paypal" class="form-selectgroup-input" />
  170. <div class="form-selectgroup-label d-flex align-items-center p-3">
  171. <div class="me-3">
  172. <span class="form-selectgroup-check"></span>
  173. </div>
  174. <div>
  175. <span class="payment payment-provider-paypal payment-xs me-2"></span>
  176. </div>
  177. </div>
  178. </label>
  179. </div>
  180. </div>
  181. ```
  182. ```html
  183. <label class="form-selectgroup-item flex-fill">
  184. <input type="radio" name="form-payment" value="mastercard" class="form-selectgroup-input" checked />
  185. <div class="form-selectgroup-label d-flex align-items-center p-3">
  186. <div class="me-3">
  187. <span class="form-selectgroup-check"></span>
  188. </div>
  189. <div>
  190. <span class="payment payment-provider-mastercard payment-xs me-2"></span>
  191. ending in <strong>2807</strong>
  192. </div>
  193. </div>
  194. </label>
  195. ```