{% extends "base.html" %} {% block title %}Form Fields & Select - Design System Wiki{% endblock %} {% block content %}
Standard text inputs, passwords, multi-line textareas, and custom styled select dropdown elements overdrawn by vector SVG chevron arrows.
The global script components.js monitors specific class names to run the premium custom select elements. Ensure your markup uses these selectors to integrate selection, triggers, and keyboard arrow controls:
| Selector / Class | Type | Behavior & Purpose |
|---|---|---|
| .custom-select | Class | Outer wrapper for the entire select component. Scopes and isolates input values and popovers. |
| .select-value | Class |
Applied to the <input type="hidden"> that stores the raw value submitted to forms.
|
| .select-trigger | Class | The visible button that user clicks. Toggles popover visibility and chevron rotation on click. |
| .select-text | Class | Inner text element inside trigger button that dynamically changes its text content to match the selected option. |
| .select-chevron | Class |
Arrow SVG icon. Rotates 180 degrees (adds rotate-180) when the menu opens.
|
| .select-popover | Class |
Floating list container. Starts with the class hidden. Positioned absolutely.
|
| .select-item | Class |
Applied to choices inside popover (usually buttons). Must have data-value="..." containing the raw option value.
|
You can customize the button trigger layout (paddings, chevrons, fonts, sizing), borders, shadows, options listing alignment, and checkmark icons. Ensure you preserve the classes .custom-select, .select-value, .select-trigger, .select-popover, and .select-item with its data-value attribute so that mouse selections and keyboard arrows function correctly.