Input Groups
.group-input fuses multiple form controls into a single horizontal unit. Borders and border-radius are merged automatically — you get a connected, seamless row without any manual overrides.
You can combine any mix of: text inputs, selects, file inputs, .input-prepend, .input-append, and buttons.
Prepend
.input-prepend attaches a label or symbol to the left of the control. It is styled as a subtle inset addon that does not compete visually with the input.
<div class="group-input">
<span class="input-prepend">@</span>
<input class="form-input" type="text" placeholder="username">
</div>
Append
.input-append attaches a label or symbol to the right of the control.
<div class="group-input">
<input class="form-input" type="text" placeholder="your-site">
<span class="input-append">.com</span>
</div>
Prepend and Append Together
Both addons can be combined on a single input for patterns like price fields or unit-labeled inputs.
<div class="group-input">
<span class="input-prepend">$</span>
<input class="form-input" type="number" placeholder="0.00">
<span class="input-append">USD</span>
</div>
Input with Button
The most common pattern: a text or email input paired with an action button. Used for search bars, newsletter forms, coupon codes, and invite links.
<div class="group-input">
<input class="form-input" type="email" placeholder="Email address">
<button class="button is-primary" type="button">Subscribe</button>
</div>
Prepend + Input + Button
Three elements in a row: a text addon, an input, and an action button. Common for URL verification and domain input patterns.
<div class="group-input">
<span class="input-prepend">https://</span>
<input class="form-input" type="text" placeholder="company.com">
<button class="button is-primary" type="button">Verify</button>
</div>
Select + Input + Button
Combine a filter select, a search input, and a submit button for record filtering or advanced search patterns.
<div class="group-input">
<select class="form-select" aria-label="Filter type">
<option>Users</option>
<option>Orders</option>
<option>Invoices</option>
</select>
<input class="form-input" type="search" placeholder="Search records">
<button class="button is-dark" type="button">Search</button>
</div>